计应192 第二组 邢佳琪

四则运算

要求:

1.两数相加不能超过100

2.两数相减不能出现负数

3.两数相乘不能大于100

4.除法不能出现小数

5.题目不能重复,可定制(数量/打印方式)

思路:

用random函数可以产生随机变量,将生成的两个随机数和四个算术符号分别存放在数组中,可以判断题目是否重复;

代码:

package sizeyunsuan;

import java.util.Random;

import java.util.Scanner;

import java.util.StringJoiner;

public class Student {

public static void main(String[] args) {

// TODO 自动生成的方法存根

Scanner scanner = new Scanner(计应192 第二组 邢佳琪System.in);

int n,m;

System.out.println("请输入一个正整数:");

n=scanner.nextInt();

System.out.println("请输入一行几道题:");

m=scanner.nextInt();

/* 将生成的两个随机数和四个运算符存在数组中 **/

int[] a=new int[10000];

int[] b=new int[10000];

int[] d=new int[10000];

Random rand=new Random();

//使用数组

String z=null;

for(int i=0;i

int x=(int)(1+Math.random()*99);

int y=(int)(1+Math.random()*99);

int c=(int)(1+Math.random()*4);

a[i]=x;

b[i]=y;

d[i]=c;

for(int j=0;j

{

if(a[j]==x&&b[j]==y&&d[j]==c)

i--;

break;

}

switch(c)

{

case 1:z="+";break;

case 2:z="-";break;

case 3:z="*";break;

case 4:z="/";break;

}

if((x>=y&&z=="-")||(x*y<100&&z=="*")||(x/y>=1&&x%y==0&&z=="/")||(z=="+"))

{ if((i+1)%m==0)

System.out.println((i+1)+":"+x+z+y+"=");

else

System.out.print((i+1)+": "+x+z+y+"="+" ");

}else

i--;

}

}

}

心得:

我觉得这个题最难得一个地方就是怎样让出的题不重复,这个我也在网上查了很多资料,就是把产生的随机数放在数组里,这个还是比较好弄的,也有的人是用递归写的,这个也行;通过这个实验我学会了用随机函数,对数组认识更加深了。

上一篇:小学生口算题卡-----计应192虎世博


下一篇:软RAID搭建-基于linux系统搭建RAID1