• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
玅神
博客园    首页    新随笔    联系   管理    订阅  订阅

懒人的幸福(四则运算出题)

 

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

 

题目要求:1.题目避免重复;2.可随意修改题目的数量;3.乘法运算结果不得超过2位数;

 

package zzm;
import java.util.Random;
import java.util.Scanner;
public class SZYS {
	public static void main(String[] args) {
		int [] d;
		int d1[]=new int[10000];
		int d2[]=new int[10000];
		d=new int [100000];//存储数据上限100000;
		int a,b,c,e;
		int j;
		Scanner in=new Scanner(System.in);
		System.out.println("请输入你要生成题目的数量:");
		e=in.nextInt();
		int temp;
		System.out.println();
		for(int i=0;i<e;i++) {
		Random r=new Random(); //利用随机数实现
		    a=r.nextInt(100)+1; 
		    b=r.nextInt(100)+1;
		 if(a<b)//避免出现负数;
		 {
			 temp=a;
			 a=b;
			 b=temp;
		 }
		 d1[i]=a;
		 d2[i]=b;
		 for( j=0;j<i;j++)
		 {
			 if(d1[j]==a&&d2[j]==b)
			 {
				 a=r.nextInt(100)+1;
				 b=r.nextInt(100)+1;
			 }
			 if(a<b)//避免出现负数;
			 {
				 temp=a;
				 a=b;
				 b=temp;
			 }
		 }
		 //i 打印题目序号;
		    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:
		    while(a*b>100)
		    {
		    	a=r.nextInt(100)+1;
		        b=r.nextInt(100)+1; 
		    }
		     System.out.println((i+1)+". "+a+"*"+b+"=");//乘积不超过两位
		     d[i]=a*b;
		     break;
		    case 4:
		     while((c=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;
		    }
}
	}
}

  设计思路:0利用Random函数实现随机出题;设置3个存储数组,目的:判断重复性;一个存储a?b的数据,其余分别存储a和b的数据;

 

posted @ 2019-09-19 22:38  玅神  阅读(153)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3