软件工程个人作业01

本文介绍了一个使用Java实现的简单随机算术题生成器,该程序能够自动生成加、减、乘、除四则运算题目,并确保运算结果的合理性。通过随机数生成运算符和操作数,程序能够有效避免重复题目,适用于教学或练习场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、设计思想

利用随机数获取运算的数据和运算的符号,进行加和输出运算。

二、源程序代码

import java.util.Random;

import java.util.Scanner;

 

public class Yunsuan {

 

       int x;

       int y;

       int z;

       int  sum;

       char c;

       String string;

       String[] s= {"+","-","*","/"};

       public  int getX() {

              return x;

       }

       public void setX(int x) {

              this.x = x;

       }

       public int getY() {

              return y;

       }

       public void setY(int y) {

              this.y = y;

       }

       public String getC() {

              Random random = new Random();

              int n=random.nextInt(4);

              if(n<=1) {

                     return s[random.nextInt(s.length)];

              }

              else {

                     return s[random.nextInt(s.length)];

              }

       }

       public String getString() {

              return string;

       }

       public void setString(String string) {

              this.string = string;

       }    

 

       public void setSum(int sum) {

              this.sum = sum;

       }

       public int Getsum() {

              return sum;

       }

       public void random() { //灏佽鐢熸垚鐨勯殢鏈烘暟

              Random r=new Random();

              x=r.nextInt(99);

              y=r.nextInt(99);

              z=r.nextInt(4);

             

              switch(getC()) {

              case "+":

                     sum=x+y;

                     break;

              case "-":

                     sum=x-y;

                     break;

              case "*":

                     if(x>10||y>10)

                     {

                            random();

                     }

                     else

                     {

                     sum=x*y;

                     }

                     break;

              case "/":

                     if(y==0) //闄ゆ暟涓�0閲嶆柊璋冪敤

                     {

                            random();

                     }

                     else

                     {

                            sum=x/y;

                     }

                    

                     break;

                            }

              setX(x);

              setY(y);

              setSum(sum);

       }

      

       public void yunsuan(){

              //random(); //璋冪敤鐢熸垚闅忔満杩愮畻

                     random();

              /*if(sum<100||sum>0)

              { //鍜屽ぇ浜�100閲嶆柊鐢熸垚

 

                     random();

             

              }

              else

              {

                     yunsuan();

              }*/

              String a=x+" "+c+" "+y;

              setString(a);

              if(c=='/')

              {

                     System.out.println(x+" "+getC()+" "+y+"="+x+""+c+""+y);

              }

              else {

              System.out.println(x+" "+c+" "+y+"="+sum);

              }

       }

      

             

      

      

       public static void main(String[] args) {

              // TODO Auto-generated method stub

             

              Yunsuan yunsuan=new Yunsuan();

              int n;

              Scanner in=new Scanner(System.in);

              n=in.nextInt();

              for(int i=0;i<n;i++ )

              {

              yunsuan.yunsuan();

              }

       }

 

}

三、运行结果

 

 

转载于:https://www.cnblogs.com/liulala2017/p/8252129.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值