zoukankan      html  css  js  c++  java
  • 四则运算的改进

    其实就是把功能用类封装起来。

    写一个函数实现取随机数:

        public static int suijishu() {
            int suijishu;
            suijishu=(int)(Math.random()*100+1);
            return suijishu;
        }//输出大于等于1小于等于100的随机整数。

    用函数调用上面的函数做四则运算,结果用string类型输出:

        public static String yunsuan1() {
            String cc;
            int aa=suijishu();
            int bb=suijishu();
            int k=suijishu();
            switch(k%2) {
            case 0 :cc="("+aa+" + "+bb+")";break;
            default:cc="("+aa+" - "+bb+")";break;
            }
            return cc;
        }//输出一个只有加减没有乘除的表达式
        
        public static String yunsuan2() {
            String cc;
            int aa=suijishu();
            int bb=suijishu();
            int k=suijishu();
            switch(k%4) {
            case 0 :cc="("+aa+" * "+bb+")";break;
            case 1 :cc="("+aa+" + "+bb+")";break;
            case 2 :cc="("+aa+" - "+bb+")";break;
            default:cc="("+aa+" / "+bb+")";break;
            }
            return cc;
        }//输出一个有加减乘除的表达式
        
        public static String yunsuan3() {
            String ee;
            String cc=yunsuan1();String dd=yunsuan1();int k=suijishu();
            switch(k%2) {
            case 0 :ee=cc+" + "+dd;break;
            default:ee=cc+" - "+dd;break;
            }
            return ee;
        }////输出一个有加减的表达式
        
        public static String yunsuan4() {
            String ee;
            String cc=yunsuan1();String dd=yunsuan1();int k=suijishu();
            switch(k%4) {
            case 0 :ee=cc+" + "+dd;break;
            case 1 :ee=cc+" - "+dd;break;
            case 2 :ee=cc+" * "+dd;break;
            default:ee=cc+" / "+dd;break;
            }
            return ee;
        }////输出一个有(可能)加减乘除的表达式

    主函数调用上面4个函数实现一些其他的功能:

        public static void main(String[] args) {
            Scanner in = new Scanner( System.in );
            //是否需要乘除运算,需要调用一个函数,不需要调用一个函数。
            System.out.println("范围:1-100,是否有乘除法?1:有,2:没有。");
            int c = in.nextInt();//try catch finally
            for(int i=0;i<10;i++) {
                if(c==2)
                    System.out.println(yunsuan3());
                if(c==1)
                    System.out.println(yunsuan4());
            }
            
        }

    额,实现不是很完全。

    结果大概是这样:

    范围:1-100,是否有乘除法?1:有,2:没有。
    1
    (82 - 55) / (2 - 18)
    (3 - 77) - (80 - 23)
    (89 + 49) - (54 - 43)
    (68 + 1) * (47 - 32)
    (97 + 28) * (84 - 98)
    (58 - 19) * (17 - 3)
    (12 + 86) / (21 - 33)
    (69 + 57) + (51 - 57)
    (48 - 5) + (2 - 86)
    (56 - 71) * (76 - 33)

    或者这样:

    范围:1-100,是否有乘除法?1:有,2:没有。
    2
    (97 + 51) + (90 + 54)
    (50 - 22) + (71 - 75)
    (81 + 100) - (73 - 56)
    (80 - 41) - (97 + 20)
    (67 + 32) - (92 + 86)
    (95 - 13) - (44 - 53)
    (72 - 11) - (87 - 65)
    (18 + 1) - (44 + 50)
    (96 + 62) - (99 + 2)
    (30 - 97) + (77 - 50)

  • 相关阅读:
    Devexpress GridView 数据格式化显示
    贝叶斯算法
    贝叶斯算法
    科普 | 7 个步骤入门区块链
    科普 | 7 个步骤入门区块链
    漫画:Spring Boot、Java多线程、分布式、Java架构的高级架构师进阶之路
    漫画:Spring Boot、Java多线程、分布式、Java架构的高级架构师进阶之路
    ARP协议工作原理[同网段及跨网段]
    ARP协议工作原理[同网段及跨网段]
    过滤DataTable数据的Select()方法
  • 原文地址:https://www.cnblogs.com/Zf451452043/p/6544298.html
Copyright © 2011-2022 走看看