zoukankan      html  css  js  c++  java
  • 四则运算加强版

    题目要求:

    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
           
           
           
  • 相关阅读:
    [转]centos sqlite3安装及简单命令
    [转] cmake源码编译安装jsoncpp
    [转]详解Linux(centos7)下安装OpenSSL安装图文方法
    [转]curl 命令模拟 HTTP GET/POST 请求
    [转]白话HTTP短连接中的Session和Token
    [转]浅谈HTTP中GET、POST用法以及它们的区别
    [转][linux][centos]嵌入式 Linux下编译并使用curl静态库
    [转]在CentOS安装CMake (CentOS7 64位适用)
    HTTP/2 资料汇总
    Http 1.x弊端与Http 2.0比较
  • 原文地址:https://www.cnblogs.com/mingning/p/4351240.html
Copyright © 2011-2022 走看看