软件工程个人作业01

题目:写一个能自动生成三十道小学四则运算题目的 “软件”,要求:除了整数以外,还要支持真分数的四则运算(需要验证结果的正确性)、题目避免重复、可定制出题的数量。

设计思想:利用循环控制生成题数;1 + (int) ( Math.random() * 100 )产生1-100的随机数;运算符为产生四个随机数分别代表加减乘除;整数,产生两个随机数并用运算符连接形成一个字符串;真分数,产生四个随机数并判断分子小于分母,用运算符连接形成一个字符串并输出。

源代码:

 1 import java.util.Scanner;
 2 
 3 public class Szys {
 4 
 5     public static void main(String[] args) {
 6     
 7         System.out.println("请输入要生成的题数:");
 8         Scanner N = new Scanner(System.in);
 9         int n=N.nextInt();
10         System.out.println("请输入出题的类型:(1.整数 2.真分数)");
11         Scanner N1 = new Scanner(System.in);
12         int n1=N1.nextInt();
13         
14         if(n1==1)  zheng(n);
15         else if(n1==2)  zhenfs(n);
16         else System.out.println("输入错误!");
17     }
18     
19     public static int random(int v)
20     {
21         int value=1 + (int) ( Math.random() * v );
22         return value;
23     }
24     public static void zheng(int n)
25     {
26         int value1,ys,value2;
27         String output = "",ys1;
28         
29         for ( int i = 0; i < n; i++ ) 
30         {
31            value1 = random(100);
32            value2 = random(100);
33            ys = random(4);
34            
35            if(ys==1) ys1="+";
36            else if(ys==2) ys1="-";
37            else if(ys==3) ys1="*";
38            else ys1="/";
39            output += value1 + " "+ys1 +" "+ value2+"="+"
";
40         }
41           System.out.println(output);
42     }
43     public static void zhenfs(int n)
44     {
45         int value1,value2,value3,value4,ys;
46         String output = "",ys1;
47         
48         for ( int i = 0; i < n; ) 
49         {
50            value1 = random(100);
51            value2 = random(100);
52            value3 = random(100);
53            value4 = random(100);
54            ys = random(4);
55            
56            if(value1 < value2 && value3 < value4)
57            {
58                if(ys==1) ys1="+";
59                else if(ys==2) ys1="-";
60                else if(ys==3) ys1="*";
61                else ys1="/";
62            
63                output += value1+"/"+value2+" "+ys1+" "+value3+"/"+value2+"="+"
";
64                i++;
65            }
66         }
67           System.out.println(output);
68     }
69 }

实验结果截图:

上课按时完成。

原文地址:https://www.cnblogs.com/qkmn/p/6500898.html