简单小程序——产生三十道小学四则运算题目

Posted ruangongyouxi

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了简单小程序——产生三十道小学四则运算题目相关的知识,希望对你有一定的参考价值。

题目要求程序可以生成三十道小学四则运算题目。

因为要随机生成题目,则需要产生随机数,因此我上网搜索了生成随机数的方法,选择了使用Random类得到规定范围内的随机数。因为一个运算需要三个元素,两个参与运算的数字,一个运算符(加减乘除),因此需要获得三个随机数,其中一个随机数的范围为1~4,对应加减乘除四个运算符。在程序中需要特别注意的是除法的运算题目生成,由于是小学题目,因此要生成可以整除的运算式。因此在除法的运算阶段,我进行了判断,若当前产生的两个随机数不能实现整除或者除数为零,便重新获得两个随机数并判断是否可以整除且输出是否为零,若不行,再次进行判断,直到可以整除且除数不为零,由此保证随机生成的题目是小学生可以接受的难度。

程序输出的最终结果包括题目部分和答案部分,并且题目和答案都有对应的序号,方便进行做完题目之后对答案。

程序代码:

package 四则运算;

 

import java.util.Random;

 

public class yunsuan {

public static void main(String[] args) {

// TODO Auto-generated method stub

int [] d;

d=new int [30];

int a,b;

int e;

System.out.println("以下是产生的三十道题目:");

for(int i=0;i<30;i++) {

Random r=new Random();  

    a=r.nextInt(100)+1;

    b=r.nextInt(100)+1;

    switch(r.nextInt(4)+1) {

    case 1:

     System.out.println((i+1)+":"+a+"+"+b+"=");

     d[i]=a+b;

     break;

    case 2:

     System.out.println((i+1)+":"+a+"-"+b+"=");

     d[i]=a-b;

     break;

    case 3:

     System.out.println((i+1)+":"+a+"*"+b+"=");

     d[i]=a*b;

     break;

    case 4:

            while((e=a%b)!=0||b==0) {

         a=r.nextInt(100)+1;

         b=r.nextInt(100)+1;

            }

     System.out.println((i+1)+":"+a+"/"+b+"=");

     d[i]=a/b;

     break;

    }

}

System.out.println("以下是上述三十道题目的答案:");

for(int j=0;j<30;j++) {

System.out.println((j+1)+":"+d[j]);

}

  }

}

以上是关于简单小程序——产生三十道小学四则运算题目的主要内容,如果未能解决你的问题,请参考以下文章

小学二年级三十道四则运算题目-扩展运算,添加指定题目数量和支持真分数运算

随机产生三十道四则运算题程序

关于运用C语言自动生成三十道小学二年级四则运算

软件工程概论-作业02

软件工程个人作业01

软件工程个人作业01