• 软件工程个人作业01


    像二柱子那样,花二十分钟写一个能自动生成三十道小学四则运算题目的 “软件”,要求:除了整数以外,还要支持真分数的四则运算(需要验证结果的正确性)、题目避免重复、可定制出题的数量。(有能力者改编成网页版)

    撰写一篇博文要求将程序的设计思想,源程序代码、运行结果截图以及分析一下个人上课未按时完成的原因,博客标题:软件工程个人作业01

    【程序设计思想】

    此次是我编写的四则运算的第一版,只是实现最基本的出题、判断答案对错和对大队的题和答错的题的数量的统计

    定义一个字符串为“+-*/”,通过从0-3中随机出数,对应“+-*/”字符。同时从0-100随机出数,进行二元运算

    用判断具体是哪个运算符号来计算正确答案

    将答题人手动输入的答案正确答案进行判等,若相等,答对题目数量+1,若不相等,答错题目数量+1,并显示正确答案

    最后显示共答对题目的数量和答错题目的数量

    通过System.currentTimeMillis()函数实现答题的记时。

    【源程序代码】

     1 package pkg;
     2 
     3 import java.util.Scanner;
     4 
     5 public class YunSuan
     6 {
     7     public static void main(String[] args) 
     8     {
     9         // TODO Auto-generated method stub
    10         long timeStart = System.currentTimeMillis();
    11         int num1,num2,result=0;
    12         int fu;
    13         int tcount=0;
    14         int fcount=0;
    15         String str="+-*/";
    16         System.out.println("请输入出题数量");
    17         Scanner input=new Scanner(System.in);
    18         int number=input.nextInt();//手动输入题目数量
    19         for(int i = 0 ; i < number ; i ++)
    20         {
    21             int intVal = (int)(Math.random() * 100 );
    22             num1=intVal;
    23             fu =(int)(Math.random() *3 ); 
    24             char ysf=str.charAt(fu);
    25             num2=(int)(Math.random() * 100 );
    26             System.out.println(num1 +""+ysf+""+num2+"=");
    27             System.out.println("请输入本题的答案:");
    28             int outcome=input.nextInt();
    29             if(ysf=='+')
    30             {
    31                 result=num1+num2;
    32             }
    33             else if(ysf=='-')
    34             {
    35                 result=num1-num2;
    36             }
    37             else if(ysf=='*')
    38             {
    39                 result=num1*num2;
    40             }
    41             else if(ysf=='/')
    42             {
    43                 result=num1/num2;
    44             }
    45             
    46             if(outcome==result)
    47             {
    48                 System.out.println("结果正确!");
    49                 tcount++;
    50             }
    51             else
    52             {
    53                 System.out.println("回答错误,正确答案为:"+result);
    54                 fcount++;
    55             }
    56         } 
    57         System.out.println("题目数量共为"+number+"条,大队题目数量为:"+tcount+",答错题目数量为:"+fcount);  
    58         long timeEnd=System.currentTimeMillis();
    59         System.out.println("总共花费:"+(timeEnd-timeStart)+"ms");
    60     }
    61 
    62 }
    View Code

    【未完成部分】

    支持真分数的四则运算、题目避免重复、没有控制所有题目的答案在0-100内、没有做成网页版

  • 相关阅读:
    JavaScript对象创建的几种方式
    【应知应会】15个常用的JavaScript字符串操作方法
    JFreeChart 之折线图
    JFreeChart 之饼图
    百度 Echart 的使用
    UEditor 的使用
    获取中文汉字字符串相应的拼音和首字母的大小写
    Java 操纵XML之修改XML文件
    Java 操纵XML之读取XML文件
    Java 操纵XML之创建XML文件
  • 原文地址:https://www.cnblogs.com/DaisyYuanyq/p/7954809.html
Copyright © 2020-2023  润新知