课程设计的任务和目标

目标:

编写一个能够自动生成小学生数学练习题目的程序。设计一个程序,能够根据用户的选择生成“10以内加法”、“10以内减法”、“20以内加法”、“20以内减法”、“100以内加法”、“100以内减法”、“100以内乘法”、“100以内除法”8种类型的题目,要求每个题目能够随机生成,并符合以下要求:

  1. 10以内加法的得数在不大于10的范围内;
  2. 20以内加法的得数在不大于20的范围内;
  3. 100以内加法的得数在不大于100的范围内;
  4. 10以内减法的两个运算数在不大于10的范围内并且差为非负数;
  5. 20以内减法的两个运算数在不大于20的范围内并且差为非负数;
  6. 100以内减法的两个运算数在不大于100的范围内并且差为非负数;
  7. 100以内乘法的得数在不大于100的范围内;
  8. 100以内除法的两个运算数在不大于100的范围内并且被除数应该是除数的整数倍;

要求程序具备以下功能:根据用户对“题目类型”的选择,在按下“出题”按钮之后,每次显示20个相应类型的题目,用户可以在界面上填写计算结果;答题完成之后,当用户按下“评卷”按钮时,根据用户的答题结果,在界面上可以显示红色的“√”或“╳”符号,以作为对用户的答题结果的评判。当用户按下“答案”按钮时,在界面上显示正确的运算结果。

设计任务

整体使用Javafx进行图形化界面的设计

运用if else语句实现根据计算用户答题情况判定答对题目和答错题目的数量增减

编写随机生成不同类型题目的函数

程序设计思路

类的设计及关系

public class mathgame2
public void start
public void answer()
public void mainView()
public void output()
public void makeQuestion

源程序

部分代码

//报错弹窗void falseWindows() {Stage stage = new Stage();GridPane abc = new GridPane();abc.setHgap(5);abc.setVgap(5);abc.setAlignment(Pos.CENTER);abc.getColumnConstraints().add(new ColumnConstraints(30));abc.getColumnConstraints().add(new ColumnConstraints(50));abc.add(new Label("请输入整数并全部答题噢"), 0, 0,3,1);abc.add(btReturn, 1, 1);btReturn.setOnAction(e -> stage.hide());Scene scene = new Scene(abc,250,100);stage.setTitle("提交不成功噢");stage.setScene(scene);stage.show();}//确认提交弹窗void confirmWindows() {Stage stage = new Stage();GridPane abc = new GridPane();abc.setHgap(5);abc.setVgap(5);abc.setAlignment(Pos.CENTER);abc.getColumnConstraints().add(new ColumnConstraints(30));abc.getColumnConstraints().add(new ColumnConstraints(50));abc.add(new Label("确认提交试卷吗?"), 0, 0,3,1);abc.add(btConfirm, 1, 1);btConfirm.setOnAction((e) -> {answer();gridPane.add(new Label("正确题数"+String.format("%d", correctAnswerCount)), 6, 7,2,1);gridPane.add(new Label("错误题数"+String.format("%d", wrongAnswerCount)), 6, 8,2,1);correctAnswerCount=0;wrongAnswerCount=0;stage.hide();});abc.add(btReturn, 2, 1);btReturn.setOnAction(e -> stage.hide());Scene scene = new Scene(abc,250,100);stage.setTitle("提交试卷确认");stage.setScene(scene);stage.show();}//退出弹窗void escWindows(){Stage stage = new Stage();GridPane abc = new GridPane();abc.setHgap(5);abc.setVgap(5);abc.setAlignment(Pos.CENTER);abc.getColumnConstraints().add(new ColumnConstraints(30));abc.getColumnConstraints().add(new ColumnConstraints(50));abc.add(new Label("确认退出吗?"), 0, 0,3,1);abc.add(btConfirm, 1, 1);btConfirm.setOnAction((e) -> {stage.hide();gridPane.getScene().getWindow().hide();});abc.add(btReturn, 2, 1);btReturn.setOnAction(e -> stage.hide());Scene scene = new Scene(abc,250,100);stage.setTitle("esc");stage.setScene(scene);stage.show();}

程序运行、测试与分析

想要查看完整代码及实验报告的同学可以下载

小学生数学练习题目自动生成系统完整源代码及实验报告

其中包含所有大作业内容

JAVA课程设计 小学生数学练习题目自动生成系统相关推荐

  1. 用java做小学数学系统_小学生数学练习题目自动生成系统——java课程设计

    <小学生数学练习题目自动生成系统--java课程设计>由会员分享,可在线阅读,更多相关<小学生数学练习题目自动生成系统--java课程设计(37页珍藏版)>请在金锄头文库上搜索 ...

  2. Java课程设计-小学生计算器

    功能 源码.经验交流QQ群:613879714,有问题QQ群提问,这里不能及时回复 1.功能 小学生计算器可以进行两位数的加减乘除运算 2.演示 B站演示视频链接 java课程设计-小学生计算器 3. ...

  3. 数学测试软件c语言,C语言课程设计小学生数学测试软件.doc

    C语言课程设计报告 PAGE PAGE 1 第 PAGE 1 页 共 NUMPAGES 11 页 <C语言课程设计报告> 标题:小学生数学测试软件 学号: 姓名: 同组人员: 年级专业:0 ...

  4. C++课程设计--小学生数学练习系统

    课设题目 小学生数学练习系统 功能需求 加法.减法.乘法.除法简易练习 加减混合练习 查看错题 自我检测 大整数加法 大整数减法 程序运行图 源码 student.h

  5. JAVA课程设计——小学数学练习

    设计题目 1.小学数学练习 1.1[问题描述] 编写一个帮助小学生练习数学的程序,帮助小学生练习 100 以内的四种数学运算:加.减.乘.除. 1.2[基本要求] a) 程序应先询问用户的 ID 号( ...

  6. 【计算机网络课程设计】TCP协议包自动生成工具【蒙混过关版】

    文章目录 引言 设计要求 分工安排 文献查阅 总体设计流程 具体设计内容

  7. ATM柜员机JAVA课程设计_JAVA课程设计报告银行ATM机系统.doc

    JAVA课程设计报告银行ATM机系统 Java课程设计报告 题 目 银行ATM机系统 所在院系 软件学院 学生姓名 金磊 专 业 R机械+软件 班 级 R机械094 学 号 2011年 7 月 15日 ...

  8. 简易抽奖系统(Java课程设计/大作业)

    简易抽奖系统(Java课程设计/大作业) package 简易抽奖系统; import java.awt.*; import java.awt.event.ActionEvent; import ja ...

  9. Java课程设计题目二:保存计算过程的计算器

    Java课程设计题目二:保存计算过程的计算器 1 设计要求 参考Windows 操作系统提供的计算器设计一个实用的计算器,要求除了具有普通的计算功能外,还具有保存计算过程的功能. ①单击计算器上的数字 ...

最新文章

  1. HDU 4166 BNU 32715 Robot Navigation (记忆化bfs)
  2. 这是我见过最蛋疼的注册中心与API网关实践!
  3. 编译mysql4.0时候出现错误提示checking LinuxThreads... Not found
  4. TOA定位算法的FPGA实现
  5. Python类继承简单实现
  6. 计算机图形学二维图形基本变换实验原理,计算机图形学实验:二维图形变换.docx...
  7. day21—AngularJS学习初体验
  8. 通配符(WildCard)与正则表达式(Regular Expression)
  9. 电导增量法matlab,基于变步长电导增量法MPPT研究.doc
  10. Redis在项目中的使用及性能测试(续)
  11. 2018年3月11日论文阅读
  12. 书籍-Docker 容器与容器云
  13. 【Ubuntu】如何使用命令行(优雅地)安装/卸载Microsoft Edge
  14. 基于51单片机智能温控风扇设计
  15. iOS逆向 和班尼特福迪一起攻克难关(unity)
  16. 12种常见贴片焊接工具
  17. nodejs websocket 并发调试笔记
  18. python听不懂_看日本电影真痛苦,本来就听不懂!还没字幕!6行代码音频转文字...
  19. Cell Biolabs丨艾美捷Arf1激活检测试剂盒
  20. 中国医科大学22春学期《系统解剖学(本科)》实践考试试题【标准答案】

热门文章

  1. JSE基础总结1---小细节
  2. Linux i2c驱动框架分析 (二)
  3. px4+vins+ego单机鲁棒飞行四(PX4飞控日志分析篇)
  4. 海马汽车经销商管理系统技术解析(五)车辆续保提醒
  5. 一周面试求职的经验教训总结
  6. 他爱在黑暗中漫游(来自《德国诗选》)
  7. java IO操作知识点
  8. 互联网快讯:小米有品有鱼发布停运公告;极米高品质投影产品获好评;奇安信发布数据卫士套件
  9. Bankless:Maker DAO的生存危机
  10. 指示函数(indicator function)