java四则运算

 

一家软件公司程序员二柱的小孩上了小学二年级,老师让家长每天出30道四则运算题目给小学生做。

二柱子那样,花二十分钟写一个能自动生成30道小学四则运算题目的 软件

课堂测试2

1)题目避免重复;

2)可定制(数量/打印方式);

设计思路:利用随机函数random()生成随机数,创建数组,把生成的四则算数式子存入数组,然后比较,避免重复。

package jishu;

import java.util.Random;

import java.util.Scanner;

public class Suanshu {

static Scanner scan=new Scanner(System.in);

static int num;

static String[] str=new String[4];

public static void main(String[]args) {

   int a[]=new int[1000000];

   int b[]=new int[1000000];

   int c[]=new int[1000000];

   System.out.print("请输入一共输入多少个");

int x;

num=scan.nextInt();

System.out.println("一行个数");

x=scan.nextInt();

str[0]="+";

str[1]="-";

str[2]="*";

str[3]="/";

Random rand=new Random();

int num0=0;

int num1;

int num2,num3;

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

int z=0;

do {

num1=rand.nextInt(99)+1;

num2=rand.nextInt(4);

if(num2==1) num3=rand.nextInt(num1);

if(num2==2) {

num3=rand.nextInt(100/num1);

}

else num3=rand.nextInt(98)+1;

if(num0>=1) {

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

if((num1==a[j])&&(num2==b[j])&&(num3==c[j])) {

z=0;

}

else {

a[j]=num1;

b[j]=num2;

c[j]=num3;

    z=1;

    num0++;

}

if(num0==0) {

a[0]=num1;

b[0]=num2;

c[0]=num3;

               num0++;

               z=1;

 }

  }

}

    }while(z==1);

System.out.print(i+1);

System.out.print("");

System.out.print(num1);

System.out.print(str[num2]);

System.out.print(num3);

System.out.print("=");

if((i+1)%x==0)

System.out.println(" ");

else

System.out.print(" ");

 }

}

}

运行结果:

请输入一共输入多少个50
一行个数
5
1、51*0= 2、50+81= 3、45*0= 4、15+34= 5、2/78=
6、17*4= 7、88/6= 8、30-18= 9、2*22= 10、73*0=
11、86/25= 12、55*0= 13、91/61= 14、12-40= 15、40*0=
16、2/43= 17、67/75= 18、73-73= 19、6/44= 20、38*1=
21、51*0= 22、81+91= 23、16+55= 24、3+6= 25、57*0=
26、83+58= 27、1*46= 28、51/38= 29、98*0= 30、88+12=
31、82*0= 32、12+2= 33、45-55= 34、14/48= 35、82/7=
36、22-40= 37、37+56= 38、35-27= 39、11-76= 40、28*2=
41、55/72= 42、19-52= 43、83/12= 44、48*1= 45、58+83=
46、16*1= 47、65/4= 48、75+41= 49、75/48= 50、50/59=

转载于:https://www.cnblogs.com/hang-hang/p/11551208.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值