第三次作业-四则运算
本文要求来自于:https://edu.cnblogs.com/campus/gzcc/GZCC-16SE1/homework/2166
GitHub:https://github.com/lincanbin5201314/ls
一、题目要求:
具体要求:任何编程语言都可以,命令行程序接受一个数字输入,然后输出相应数目的四则运算题目和答案。例如输入数字是 30, 那就输出 30 道题目和答案。 运算式子必须至少有两个运算符,运算数字是在 100 之内的正整数,答案不能是负数。 如:
23 - 3 * 4 = 11
二、个人软件过程耗时估计与统计表
第三部分:代码实现
1.首先整理一下思路,四则运算需要两个字符和三个数字,这里我通过设定两个随机数来确认四则运算里的符号,数字则定在100以内。
2通过两个switch语句确认符号,在通过循环语句循环客户输入的条数,若生成的运算为负数则重新生成。
3.最后是我还想做一个真分数的四则运算,可是想了很久,只有这样的思路:因为算式里有3个数,所以我重新创建了3个随机数,在创建3个变量来存放算式中的数与3个随机数组成的真分数,这其中涉及到各种类型的转换,当产生的随机真分数刚好为整数时,需要判断语句,并对它算式的输出做出改变,让它以整数的形式表现出来。其中需要太多的步骤和细节。最后还是没能做出,就说一下思路。
部分代码:
for (int i=0;i<num;i++)
{
int x1 = r.nextInt(4) + 1;
int x2 = r.nextInt(4) + 1;
int x3 = r.nextInt(100) + 1;
int x4 = r.nextInt(100) + 1;
int x5 = r.nextInt(100) + 1;
compute(x1,x2,x3,x4,x5,i);
}
}
private static void compute(int x1, int x2, int x3, int x4, int x5, int i){
switch (x1) {
case 1:
switch (x2) {
case 1:
int sum1 = x3 + x4 + x5;
if(sum1<0)
i--;
else
System.out.println(sum1 + "=" + x3 + "+" + x4 + "+" + x5);
break;
结果图: