四则运算加强版

题目要求:

1、题目避免重复;

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

3、可以控制下列参数是否有乘除法、是否有括号、 数值范围、加减有无负数、除法有无余数、否支持分数 (真分数假分数)、是否支持小数 (精确到多少位)、打印中每行的间隔可调整;

思路:

   在原有程序中用数组实现避免重复;

   用if、for语句实现客定制;

   用控制面板实现客定制;

源代码:

import java.util.Random;
import java.util.Scanner;
public class Yunsuan
{
 public static void main(String[] args)
  {
   // TODO Auto-generated method stub
  Scanner input =new  Scanner(System.in);
        System.out.print("请输入题目数量:");
        int num=input.nextInt();
        System.out.print("请输入数值范围(最小、最大)");
        int sc1=input.nextInt();
        int sc2=input.nextInt();
        System.out.print("是否有乘除法(若有选择1、若无选择0):");
        int c1=input.nextInt();
        if(num<0)
         System.out.print("输入有误,请重新输入!");
        else
        {  
           Random a=new Random();
           Random b=new Random();
           Random c=new Random(4);
           int[] array1= new int[num];
           int[] array2=new  int[num];
           int[] array3=new int [num];
           for(int i=0;i<num;i++)
           {
            array1[i]=a.nextInt(sc2-sc1+1)+sc1;
            array2[i]=b.nextInt(sc2-sc1+1)+sc1;
            if(i>=1)  //排除重复数
            {                               
             if(array1[i]==array1[i-1] && array2[i]==array2[i-1]&&array3[i] ==array3[i-1])
             {
            i--;
               break;
             }
             }
            if(c1==1)
             for(int j=0;j<num;j++)
                {array3[j]=c.nextInt(4); }
            else
            for(int m=0;m<num;m++)
                {array3[m]=c.nextInt(2);}
            
          switch(array3[i])
              {case 0:
               System.out.println(array1[i]+"+"+array2[i]+"=");
               break;
              case  1:
               System.out.println(array1[i]+"-"+array2[i]+"=");
               break;
              case 2:
               System.out.println(array1[i]+"x"+array2[i]+"=");
               break;
              case 3:
               if(array2[i]!=0)
                  System.out.println(array1[i]+"/"+array2[i]+"=");
               else
                i--;
               break;
              }
         
           } 
      
        }
  }
}

结果截图:

 

时间日志:

    日期

 

开始时间

 

结束时间

 

时间

  3/17 19:00 21:00 120
3/18 14:00 16:00 120
319 16;00 18:00 120
       
       
       

 

posted @ 2015-03-19 18:21  嘴角上扬的马先生  阅读(140)  评论(0编辑  收藏  举报