zoukankan      html  css  js  c++  java
  • 四则运算1

    1.程序设计思想:

      用Math.random()方法生成0~1之间随机数,乘以所需的范围再取整即可,考虑到避免题目重复,我用所需范围折半相加取随机运算数结果,大大降低了重复概率,用整型变量quentity来接收用户想要出题的数量,因为加减乘除运算都要有,所以每一次出题用两个随机的运算数相加除4取余数,根据余数为0、1、2、3,确定用加、减、乘、除,然后用for循环完成每一次出题,还需要考虑当除法时候分母为0的时候,我设计的是当除数为0是i--,即重新取一次两个运算数再次判断再次运算,执行除运算的语句要把运算数进行强制类型转换,转换成double类型,用double类型的数接收除完之后的结果,然后用String.format("%.2f",d)方法来保留真分数和假分数的运算结果位数为2位。

    2.源程序代码:

    package practice;
    
    import java.util.Scanner;
    
    public class ChuTi 
    {
        public static void main(String[] args) 
        {
            int a;
            int b;
            int c;
            int quentity;
            System.out.println("请输入您想出题的数量:");
            Scanner input=new Scanner(System.in);
            quentity=input.nextInt();
            for(int i=1;i<=quentity;i++)
            {
                a=(int)(Math.random()*50+Math.random()*50);
                b=(int)(Math.random()*50+Math.random()*50);
                c=(a+b)%4;
                double d;
                switch(c)
                {
                case 0:
                {
                    System.out.println(a+"+"+b+"="+(a+b));break;
                }
                case 1:
                {
                    System.out.println(a+"-"+b+"="+(a-b));break;
                }
                case 2:
                {
                    System.out.println(a+"*"+b+"="+(a*b));break;
                }
                case 3:
                {
                    if(b==0)
                    {
                        i--;
                    }
                    else if(a<b)
                    {
                        d=(double)a/b;
                        System.out.println(a+"/"+b+"="+String.format("%.2f",d));
                    }
                    else
                    {
                        System.out.println(a+"/"+b+"="+a/b);
                    }
                    break;
                }
                }
            }
        }
    }

    3.运行结果截图:

    4.上课未按时完成的原因:

      让加减乘除随机生成,没有想到用取余根据余数判断随机生成和执行哪个运算。

  • 相关阅读:
    [转] 百万级数据查询优化
    vs生成失败不报错
    C# 编译器错误对应代码详细信息
    使用XSL 样式表无法查看XML 输入。请更正错误然后单击刷新按钮
    vs中release模式调试和错误:CA0503:无法显示额外的代码分析警告或错误
    sp_executesql的用法
    一个for循环根据条件可以递增或递减
    Lc.exe已退出 代码为1
    将所有输出窗口文本重定向到即时窗口
    两步解决《内部服务器错误:500》
  • 原文地址:https://www.cnblogs.com/iCheny/p/7945162.html
Copyright © 2011-2022 走看看