zoukankan      html  css  js  c++  java
  • 软件工程个人作业01之四则运算30题

    题目:自动生成30道小学四则运算题,除了整数以外,还要支持真分数的四则运算,可定制出题的数量,题目避免重复。

    1.程序设计思想:设计一个class类,包含生成真分数的函数,再在主函数中带调用此函数,并且在主函数中实现加减乘除四种功能,且每种功能除了整数的情况外,还有真分数的情况。

    2.源程序代码:

    package 四则运算;
    import java.util.Scanner;
    public class Test 
    {    
        public static void main(String[] args) 
        {
            LIANX lianx=new LIANX();
            Scanner scanner=new Scanner(System.in);
            System.out.print("请输入想要定制的题的数量:");
            int k=scanner.nextInt();
            for(int i=0;i<k;i++)
            {
                int suiji1=1+(int)(Math.random()*100);  
                int suiji2=1+(int)(Math.random()*100);  
                int suanfu=1+(int)(Math.random()*4);
                if(suanfu==1)//加法                
                {
                    int fangshi=(int)(Math.random()*4);
                    String a=lianx.fenshu();
                    String b=lianx.fenshu();
                    if (fangshi==1)   {   System.out.println(suiji1+"+"+suiji2+"=");  }//整数相加
                    else if (fangshi==2)   {   System.out.println(a+"+"+b+"=");}//真分数相加
                    else if (fangshi==3)   {   System.out.println(a+"+"+suiji2+"="); }//整数与真分数相加
                }
                
                if(suanfu==2)//减法
                {    
                    int fangshi1=1+(int)(Math.random()*3);
                    String a=lianx.fenshu();
                    String b=lianx.fenshu();
                    if (fangshi1==1)  { System.out.println(suiji1+"-"+suiji2+"=");}//整数相减
                    else if (fangshi1==2)  { System.out.println(a+"-"+b+"=");}//真分数相减
                    else if (fangshi1==3)  { System.out.println(a+"-"+suiji1+"="); }//整数减真分数            
                }
                
                if(suanfu==3)//乘法
                {
                    int fangshi2=1+(int)(Math.random()*3);
                    String a=lianx.fenshu();
                    String b=lianx.fenshu();
                    if (fangshi2==1) { System.out.println(suiji1+"*"+suiji2+"=");}
                    else if (fangshi2==2) { System.out.println(a+"*"+b+"=");          }
                    else if (fangshi2==3) { System.out.println(suiji1+"*"+b+"=");          }
                }
                        
                if(suanfu==4)//除法
                {   
                  int fangshi3=1+(int)(Math.random()*2); 
                  String a=lianx.fenshu();
                  String b=lianx.fenshu();
                  if (fangshi3==1) 
                  { 
                      if(suiji1<=suiji2)    {  System.out.println(suiji1+"/"+suiji2+"="); }
                      if(suiji1>suiji2)    {  System.out.println(suiji2+"/"+suiji1+"="); }
                  }
                  else if (fangshi3==2) {  System.out.println(a+"/"+b+"=");           }      
                }
                
            }
        }
    
    }
    class  LIANX//生成真分数函数
    { 
       public  String fenshu()//真分数
       {
        int i=1+(int)(Math.random()*10);
        int j=1+(int)(Math.random()*10);
        if(i>=j)
        {
            int temp=i;
            i=j;
            j=temp;
        }
        return("("+i+"/"+j+")");
        }    
    }

    3.运行结果截图:

    4.上课未完成原因:首先我上课时只完成了整数的加减乘除运算,未包含真分数情况,没有按时完成是因为没有及时的实现(1)需要验证结果的正确性(2)题目避免重复这两个要求

  • 相关阅读:
    P1158 导弹拦截
    麦基数(p1045)
    Django之路由层
    web应用与http协议
    Django之简介
    Mysql之表的查询
    Mysql之完整性约束
    Mysql之常用操作
    Mysql之数据类型
    Mysql之数据库简介
  • 原文地址:https://www.cnblogs.com/bailanglang/p/6511511.html
Copyright © 2011-2022 走看看