四则运算 Day2
元旦快乐篇
别人在过元旦,而我却在敲代码,说多了都是泪。
设计思路
1. 界面设计
- 程序运行时,跳出运行说明提示用户如何操作
- 用户阅读完说明后点击开始进入主界面,即操作界面,操作界面分为计时区,操作区和功能选择区
- 计时区 显示当前剩余时间,当时间为0时 自动弹出 统计结果
- 操作区 用户只能输入运算的结果,直接点击回车提交答案,系统将自动给出下一组数据
- 功能选择区 用户可以选择需要进行的运算方式 包括 加、减乘除。 开始,暂停。 当用户点击开始按钮时,操作区给出运算的数字,同时计时区开始计时。用户开始输入结果。当用户点击暂停按钮。计时区停止计数。同时显示到目前的统计结果。
- 显示结果。当计时区时间为0 或者用户点击暂停时将自动弹出。用于显示用户当前答题总数和答对题数以及正确率。
2. 代码实现思路
使用多线程,实现程序的计数功能。 同时使用另一个线程来时时监控计时区的时间变化。当计时为0 时 监控线程关闭计时线程。同时弹出最后的显示结果。再将答案输入框禁用。
操作区 当用户点击开始按钮。系统调用 RANDOM方法产生两个0-10 的随机数。如果当前的运算符号为 除法时检查第二个随机数是否为0 ,如果为0 重新生成第二个随机数。再将随机数赋值到显示框内。用户输入完答案后,点击回车提交后台自动将数据保存到一个数据类中,同时对数据进行处理,并生成统计结果。
功能区 用户自主选择使用的运算符。当选择一种时改变操作区的运算符号。同时改变数据类保存的运算符类型。
界面实现
开始界面

操作界面


统计界面

存在的bug,及解决
结果输入框,如果输入非数字会导致程序错误。

解决方案:设置输入类型。只允许输入小数点和数字。如下图所示
四则运算 Day2的更多相关文章
- 软件工程(FZU2015)增补作业
说明 张老师为FZU软件工程2015班级添加了一次增补作业,总分10分,deadline是2016/01/01-2016/01/03 前11次正式作业和练习的迭代评分见:http://www.cnbl ...
- 软件工程(FZU2015) 增补作业
SE_FZU目录:1 2 3 4 5 6 7 8 9 10 11 12 13 说明 张老师为FZU软件工程2015班级添加了一次增补作业,总分10分,deadline是2016/01/01-2016/ ...
- 介绍一款原创的四则运算算式生成器:CalculateIt2
家里小朋友读一年级了,最近每天都有一些10以内的加减法口算练习,作为程序员爸爸,自然也是想办法能够偷懒,让电脑出题,给小朋友做些练习.于是,自己在业余时间开发了一个四则运算算式生成器,名为:Calcu ...
- 【从零开始学BPM,Day2】默认表单开发
[课程主题]主题:5天,一起从零开始学习BPM[课程形式]1.为期5天的短任务学习2.每天观看一个视频,视频学习时间自由安排. [第二天课程] Step 1 软件下载:H3 BPM10.0全开放免费下 ...
- NOIp2016 Day1&Day2 解题报告
Day1 T1 toy 本题考查你会不会编程. //toy //by Cydiater //2016.11.19 #include <iostream> #include <cstd ...
- 作业二:个人编程项目——编写一个能自动生成小学四则运算题目的程序
1. 编写一个能自动生成小学四则运算题目的程序.(10分) 基本要求: 除了整数以外,还能支持真分数的四则运算. 对实现的功能进行描述,并且对实现结果要求截图. 本题发一篇随笔,内容包括: 题 ...
- day2
三级菜单: ))))))))))] last_levels.pop() ]]]]]]]]:] information = : ch = msvcrt.getch() ][][: : password= ...
- 四则运算appNABCD模型
团队: 郭志豪:http://www.cnblogs.com/gzh13692021053/ 杨子健:http://www.cnblogs.com/yzj666/ 刘森松:http://www.cnb ...
- 第一章-第一题(小学生四则运算)--By郭青云
1.项目需求 a) 除了整数以外,还要支持真分数的四则运算. (例如: 1/6 + 1/8 = 7/24) b) 让程序能接受用户输入答案,并判定对错. 最后给出总共 对/错 的数量. c) 逐步扩 ...
随机推荐
- codeforces 713C C. Sonya and Problem Wihtout a Legend(dp)
题目链接: C. Sonya and Problem Wihtout a Legend time limit per test 5 seconds memory limit per test 256 ...
- 怎样获取优酷站内视频的MP4格式地址,嵌入到手机页面播放
最近的有关项目需要使用video标签播放视频,并且视频的路径src是优酷里面的视频,所以需要得到优酷里面的mp4路径才能播放. 但是在网上查了下资料,看到优酷的播放格式是一个m3u8文件,如图所示: ...
- Debian安装中文输入法
简单暴力: apt-get install ibus-pinyin 你也可以通过GUI下面到Synaptic Package Manager里面选中ibus-pinyin进行安装 安装完成后重启计算机 ...
- UVALive 5966 Blade and Sword -- 搜索(中等题)
题意:给一幅地图,P为起点,D为终点,'*'为传送阵,到达传送阵可以传到任意一个其他的传送阵,传到以后可以正常走或者再传回来,问P->D最短步数. 分析:这题一定要细心,分析要到位才能搞定,错一 ...
- [cb]Unity 项目架构
一.技能机制 二.游戏工程 三.客户端架构
- Enem 实用方法
前言 在项目中的多处使用到了枚举,比如:道具种类(PowerupType) 游戏任务(MissionType),记录一下有关枚举的一些方法 枚举 public enum MissionType { R ...
- CSS3中的字体rem
rem和em都是相对单位,em相对父元素的font-size来计算,而rem是根据文档根元素(html)的font-size大小来计算的 通常将html的字体大小设为62.5%(等于10px),当然也 ...
- 006医疗项目-模块一:用户的查找:2.用户表查询的mapper映射的文件
前一篇文章已经把sql语句写好了并且在PL/SQL上调试过了,是可以的.这篇文章是写对应的mapper.xml, 第一步我们先通过逆向工程去构建每个表的mapper.xml文件和pojo类.这个我们在 ...
- High Performance Animations
http://www.html5rocks.com/zh/tutorials/speed/high-performance-animations/
- [资源]PHP使用消息队列
利用PHP操作Linux消息队列完成进程间通信 基于HTTP协议的轻量级开源简单队列服务:HTTPSQS[原创] Redis队列——PHP操作简单示例 入队操作 <?php $redis = n ...
