软件工程个人作业01

Posted 小嵩

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了软件工程个人作业01相关的知识,希望对你有一定的参考价值。

    作业要求:

〇 花二十分钟写一个能自动生成三十道小学四则运算题目的 “软件”,除了整数以外,还要支持真分数的四则运算。

〇 和同学们比较一下各自程序的功能、实现方法的异同等等。
 
设计思想:首先自动生成必须要有随机数,然后运算符的随机可以使用0~3代替,依次代表加减乘除,支持真分数可以用一个if语句,让用户自动选择题目是整数还是真分数,其中三十道题目让我改成了可以自主选择题目数量,这样可以自主选择分数题和整数题的数量,便于使用。
 
源代码:
技术分享
import java.util.*;//引用util包

public class Yunsuan {

    public static void main(String[] args)  {
        // TODO Auto-generated method stub
        Random ran = new Random();//初始化随机数
        int num1;
        int num2;
        int num3;
        int num4;
        int chars;
        int num0;
        while(true)
        {
            System.out.println("输入题目的数量:");
            Scanner sca = new Scanner(System.in);
            num0 = sca.nextInt();//输入题数
            System.out.println("真分数运算(1),整数运算(0):");
            int  judge = sca.nextInt();
            if(judge == 0)
                for(int i=0; i<num0; i++)
                {
                    int k = i+1;
                    num1 = ran.nextInt(100);
                    num2 = ran.nextInt(100);
                    chars = ran.nextInt(4);
                    if(chars == 0)
                        System.out.println("["+k+"]"+num1+"+"+num2+"=");
                    if(chars == 1)
                        System.out.println("["+k+"]"+num1+"-"+num2+"=");
                    if(chars == 2)
                        System.out.println("["+k+"]"+num1+"*"+num2+"=");
                    if(chars == 3)
                        if(num2 == 0)
                            i=i-1;
                        else
                            System.out.println("["+k+"]"+num1+"/"+num2+"=");
                    
                }
            else if(judge == 1)
                for(int i=0; i<num0; i++)
                {
                    int k = i+1;
                    int t;
                    num1 = ran.nextInt(100);
                    num2 = ran.nextInt(100);
                    num3 = ran.nextInt(100);
                    num4 = ran.nextInt(100);
                    chars = ran.nextInt(4);
                    if(num1>num2)
                    {
                        t = num2;
                        num2 = num1;
                        num1 = t;
                    }
                    if(num1 == num2)
                        num2 = num2+1;
                    if(num3>num4)
                    {
                        t = num4;
                        num4 = num3;
                        num3 = t;
                    }
                    if(num3 == num4)
                        num4 = num4+1;
                    if(chars == 0)
                        System.out.println("["+k+"]"+num1+"/"+num2+"+"+num3+"/"+num4+"=");
                    if(chars == 1)
                        System.out.println("["+k+"]"+num1+"/"+num2+"-"+num3+"/"+num4+"=");
                    if(chars == 2)
                        System.out.println("["+k+"]("+num1+"/"+num2+")*("+num3+"/"+num4+")=");
                    if(chars == 3)
                        System.out.println("["+k+"]("+num1+"/"+num2+")/("+num3+"/"+num4+")=");
                    
                }
            else
                System.out.println("输入有误,请重新");
        }
    }

}
四则运算

结果截图:

技术分享技术分享技术分享

以上是关于软件工程个人作业01的主要内容,如果未能解决你的问题,请参考以下文章

软件工程个人作业01

软件工程个人作业01

软件工程个人作业01

软件工程个人作业01

软件工程个人作业01

软件工程个人作业01