• 实验二--四则运算-升级版--2


    import java.util.*;
    import java.util.Random;
    import java.text.DecimalFormat;
    public class SiZe {
        public static void main(String[] args) {
            
            String[] str_1 = new String[] {"0", "1", "2", "3", "4", "5", "6", "7", "8", "9"};
            String[] str_2 = new String[] { "+", "-", "*", "/"};
            int index_1 = 0;
            int index_2 = 0;
            int[] a = new int[2];
            double data = 0;
            double answer = 0;
            int num = 0;
            int  num_1 = 0;
            DecimalFormat dFormat=new DecimalFormat("#.00");
            
            while(num_1 > 5 || num_1 <= 0)
            {
                System.out.print("请输入题目的数量(题目数量最多不能超过5个): ");
                Scanner sc = new Scanner(System.in);
                num_1 = sc.nextInt();
            }
            System.out.println("注意!除法计算结果保留两位,含四舍五入!!");
            long t1=System.currentTimeMillis();
            for(int k = 0; k < num_1; k++)
            {
                System.out.print("第"+(k+1)+"道题:");
                for(int i = 0; i < 2; i++)
                {
                    index_1 = new Random().nextInt(9);
                
                    if(str_2[index_2].equals("/") && index_1 != 0)
                    {
                        while(index_1 == 0)
                        {  
                            index_1 = new Random().nextInt(9);
                        }
                    }                    
                    a[i] = index_1;     
                    if(i != 1)
                    {
                        index_2 = new Random().nextInt(4);
                    }
                }
    
                System.out.print(str_1[a[0]]+str_2[index_2]+str_1[a[1]]+"=");
                Scanner input = new Scanner(System.in);
                data =input.nextDouble();
                
                switch(index_2)
                {
                    case 0:
                        answer = a[0] + a[1];
                        break;
                    case 1:
                        answer = a[0] - a[1];
                        break;
                    case 2:
                        answer = a[0] * a[1];
                        break;
                    case 3:
                        answer = (double)a[0] / a[1];
                        answer = (Math.round(answer*100)/100.0);
                        break;
                }
                
                if(data == answer)
                {
                    System.out.println("你输入的答案正确!");
                    num++;
                }
                else
                {
                    System.out.println("你输入的答案错误!正确答案是: "+answer);
               
                }
                
                System.out.println();
                if((System.currentTimeMillis()-t1)/1000 >= 120)
                {
                    System.out.println("时间已到,不能答题!");
                    break;
                }
            }
            System.out.println(num_1+"道题目,你一共答对"+num+"道题目!");
            System.out.println("完成"+num+"道题目所用时间为: "+ (System.currentTimeMillis()-t1)/1000 + "秒!");
        }
    
    }

  • 相关阅读:
    kb-07线段树-12--二分查找区间边界
    kb-07线段树--11--区间多重该值多种查询
    kb-07线段树--10--dfs序建树
    kb-09-线段树--区间合并比较繁
    kb-07线段树-08--区间开根
    kb-07-RMQ线段树--07(动态规划)
    kb-07线段树-06离散化(与第四题类似)
    kb-07线段树-05-区间整体修改查询;(水)
    poj-2486-Apple Tree
    mnist的数据预处理
  • 原文地址:https://www.cnblogs.com/OuZeBo/p/4405474.html
Copyright © 2020-2023  润新知