• 软件工程概论02~ 四则运算


    package demo;
    import java.util.*;
    //正数的随机取值
    class number1{
        private int i;
        private int j;
        public void seti()
        {
            i = 1 + (int)(Math.random() * 100);
        }
        public int geti()
        {
            return i;
        }
        public void setj()
        {
            j = 1 + (int)(Math.random() * 99);
        }
        public int getj()
        {
            return j;
        }
        
    }
    //负数的随机取值
    class Number{
        private int i;
        private int j;
        public void seti()
        {
            i = (-1) + (int)(Math.random() * (-100));
        }
        public int geti()
        {
            return i;
        }
        public void setj()
        {
            j = (-1) + (int)(Math.random() * (-99));
        }
        public int getj()
        {
            return j;
        }
        
    }
    //运算符号的随机取值
    class symbol{
        private int a;
        public void seta()
        {
            a = 1 + (int)(Math.random() * 4);
        }
        public int geta()
        {
            return a;
        }
    }
    //分数的随机取值
    class number2{
        private int i;
        private int j;
        private int x;
        private int y;
        public void setnumber()
        {
            i = 1 + (int)(Math.random() * 100);
            j = 1 + (int)(Math.random() * 99);
            x = 1 + (int)(Math.random() * 100);
            y = 1 + (int)(Math.random() * 99);
        }
        public int getnumberi()
        {
            return i;
        }
        public int getnumberj()
        {
            return j;
        }
        public int getnumberx()
        {
            return x;
        }
        public int getnumbery()
        {
            return y;
        }
        
        
    }
    public class calculate {
        public static void main(String args[])
        {
            menu();
            System.out.println("请输入想要运行的计算");
            Scanner scan = new Scanner(System.in);
            int p;
            p = scan.nextInt();
            if(p == 1)
            {
                for(int i = 0 ; i <= 29 ; i ++){
                    number1 n1 = new number1();
                    int a1 , a2;
                    n1.seti();
                    a1 = n1.geti();
                    n1.setj();
                    a2 = n1.getj();
                    symbol s = new symbol();
                    int b;
                    s.seta();
                    b = s.geta();
                    if(b == 1)
                        System.out.println(a1 + "+" + a2 + "=" + ( a1 + a2 ) );
                    if(b == 2)
                        System.out.println(a1 + "-" + a2 + "=" + (a1 - a2));
                    if(b == 3)
                        System.out.println(a1 + "*" + a2 + "=" + (a1 * a2));
                    if(b == 4){
                        int c = a1 % a2;
                        int c1 = (a1 - c) / a2;
                        System.out.println(a1 + "/" + a2 + "=" + c1 + "" + c);
                    }
                        
                }
            }
            if(p == 2){
                for(int i = 0 ; i <= 29 ; i ++){
                    Number n1 = new Number();
                    int a1 , a2;
                    n1.seti();
                    a1 = n1.geti();
                    n1.setj();
                    a2 = n1.getj();
                    symbol s = new symbol();
                    int b;
                    s.seta();
                    b = s.geta();
                    if(b == 1)
                        System.out.println(a1 + "+" + "(" +a2 + ")" + "=" + ( a1 + a2 ) );
                    if(b == 2)
                        System.out.println(a1 + "-" + "(" +a2 + ")" + "=" + (a1 - a2));
                    if(b == 3)
                        System.out.println(a1 + "*" + "(" +a2 + ")" + "=" + (a1 * a2));
                    if(b == 4){
                        int c = ((-1) * a1) % ((-1) * a2);
                        int c1 = ((-1) * a1 - c) / ((-1) * a2);
                        System.out.println(a1 + "/" + "(" +a2 + ")" + "=" + c1 + "" + c);
                    }
                        
                
                }
            }
            if(p == 3)
            {
                for(int i = 0 ; i <= 29 ; i++)
                {
                    number2 n2 = new number2();
                    int b1 , b2 , b3 , b4;
                    n2.setnumber();
                    b1 = n2.getnumberi();
                    b2 = n2.getnumberj();
                    b3 = n2.getnumberx();
                    b4 = n2.getnumbery();
                    symbol s1 = new symbol();
                    int c;
                    s1.seta();
                    c = s1.geta();
                    if(c == 1)
                        System.out.println(simplify(b2 , b1) + "+" + simplify(b4 , b3) + "=" + simplify(b2 * b3 + b4 * b1 , b1 * b3));
                    if(c == 2)
                        System.out.println(simplify(b2 , b1) + "-" + simplify(b4 , b3) + "=" + simplify(b2 * b3 - b4 * b1 , b1 * b3));
                    if(c == 3)
                        System.out.println(simplify(b2 , b1) + "*" + simplify(b4 , b3) + "=" + simplify(b2 * b4 , b1 * b3));
                    if(c == 4)
                        System.out.println(simplify(b2 , b1) + "/" + simplify(b4 , b3) + "=" + simplify(b2 * b3 , b1 * b4));
                }
            }
            if(p == 4)
            {
                int i = 0;
                while(i < 30){
                    number1 n = new number1();
                    int a1 , a2;
                    n.seti();
                    a1 = n.geti();
                    n.setj();
                    a2 = n.getj();
                    if(a1 % a2 == 0)
                    {
                        i++;
                        System.out.println(a1 + "/" + a2 + "=" + (a1 / a2));
                    }
                }
            }
            if(p == 5)
            {
                int i = 0;
                while(i < 30){
                    number1 n = new number1();
                    int a1 , a2;
                    n.seti();
                    a1 = n.geti();
                    n.setj();
                    a2 = n.getj();
                    if(a1 % a2 != 0)
                    {
                        i++;
                        int c = a1 % a2;
                        int c1 = (a1 - c) / a2;
                        System.out.println(a1 + "/" + a2 + "=" + c1 + "" + c);
                    }
                }
            }
            if(p == 6)
            {
                System.out.println("请输入范围的左边界:");
                Scanner scan1 = new Scanner(System.in);
                int a3;
                a3 = scan1.nextInt();
                System.out.println("请输入范围的右边界:");
                Scanner scan2 = new Scanner(System.in);
                int a4;
                a4 = scan1.nextInt();
                int i = 0;
                while(i < 30){
                    number1 n1 = new number1();
                    int a1 , a2;
                    n1.seti();
                    a1 = n1.geti();
                    n1.setj();
                    a2 = n1.getj();
                    symbol s = new symbol();
                    int b;
                    s.seta();
                    b = s.geta();
                    if(a1 >= a3 && a1 <= a4 && a2 >= a3 && a2 <= a4)
                    {
                        i++;
                        if(b == 1)
                            System.out.println(a1 + "+" + a2 + "=" + ( a1 + a2 ) );
                        if(b == 2)
                            System.out.println(a1 + "-" + a2 + "=" + (a1 - a2));
                        if(b == 3)
                            System.out.println(a1 + "*" + a2 + "=" + (a1 * a2));
                        if(b == 4){
                            int c = a1 % a2;
                            int c1 = (a1 - c) / a2;
                            System.out.println(a1 + "/" + a2 + "=" + c1 + "" + c);
                        }
                    }    
                }
            }
            if(p == 7)
            {
                
            }
            
            
        }
        public static String simplify(int a,int b)   //获得最简分数
        {
            int max = 0;
            for(int i = 0 ;i < 100 ;i ++)
            {
                int n = i + 1 ;
                if(a % n == 0 && b % n == 0)
                    max = n;
                
            }
            return (String)( a / max + "/" + b / max);
        }
        public static void menu()
        {
            System.out.println("1. 正数的四则运算");
            System.out.println("2. 负数的四则运算");
            System.out.println("3. 分数的四则运算");
            System.out.println("4. 整除运算");
            System.out.println("5. 非整除运算");
            System.out.println("6. 规定数值范围的运算");
        }
    
    }

    程序截图:

    一周项目总结

        时间记录日志

    缺陷日志

     总结:   刚开始觉得写好代码就可以了,这些总结和分析没什么用,但是随着老师的讲解~  代码写半天,总结一天半~ 我渐渐认识到这些的重要性,写好任务分析,这要程序写一半也可以交手给别人,对事后的维护也很重要,这是对别人的负责,也是一个程序员该有的责任。  表格什么的刚开始觉得是很麻烦呢,但是养成习惯之后就好, 慢慢的就能估计任务所需时间,提高自己的速度,毕竟效率为王。这周组队了,以后的任务我们就是一个TAEM,我会做好自己该做的任务,培养团队精神。

  • 相关阅读:
    linux grep --我最喜欢的命令~~
    svmrank 的误差惩罚因子c选择 经验
    转:机器学习中的算法(2)-支持向量机(SVM)基础
    转:关于python文件操作大全
    python 求两个时间差
    多个excel合并(excel2007)
    oracle12c 新建表空间
    数据库表被锁了
    join ,left join ,right join有什么区别
    最简洁的权限(菜单)控制
  • 原文地址:https://www.cnblogs.com/dk1203573488/p/6527624.html
Copyright © 2020-2023  润新知