• 软件工程个人作业01


    1像二柱子那样,花二十分钟写一个能自动生成三十道小学四则运算题目的 “软件”,要求:除了整数以外,还要支持真分数的四则运算。
    设计思想:用Java,新建个工程默认路径下再建个类,点自动生成主函数。先编写一个可以生成题目的函数,返回题目字符串。再编写另一个程序,调用生成题目的函数,并接收返回值,再以一定的格式输出。任务就完成了。
    为getPfQuestion()函数用到的核心语句Math.random():产生一个[0,1)之间的随机数。用1+(int)(Math.random()*100)得到100以内整数,随机出现加减乘除运算,用的也是这句Math.random()代码,既然是随机,那也是平均的。多少到多少定为加法,多少到多少定为减法,看需要。然后就是些细节了,如果加法的和大于100,两个加数均除2;减法的差小于0,则减数与被减数调换;乘法需要两个都为个数,对10取余数就行了;除法要除数为个位,并且不能为0,那就加10后再对10取余;最后把题目化为String类型返回。
    支持真分数。分子比分母小的分数,叫做真分数,小学,分子和分母是个位就行了。然后注意除法时除数的分子不能为0,接着编写print30Questions()打印30道题函数,来个循环。
    程序代码:

    private static String getPfQuestion() {
    //说明:getPfQuestion()得到真分数题目函数,随机生成真分数题目,返回真分数题目字符串。
    int t = 0;
    String strz = "";

    int x1=1+(int)(Math.random()*10);
    int x2=1+(int)(Math.random()*10);//分母

    int y1=1+(int)(Math.random()*10);
    int y2=1+(int)(Math.random()*10);//分母

    if( x2 <= x1 ){
    t = x2;
    x2 = x1;
    x1 = t;
    if( x1 == x2 ) {
    x1 = x1 - 1;//保证分子比分母小
    }
    }

    if( y2 <= y1 ){
    t = y2;
    y2 = y1;
    y1 = t;
    if( y1 == y2 ) {
    y1 = y1 - 1;//保证分子比分母小
    }
    }

    int z=1+(int)(Math.random()*100);

    if( z<=25 ) {
    strz = "×";
    }
    if( z>25 && z<=50 ) {
    strz = "÷";
    if( y1 == 0 )
    y1 = y1 + 1;//除数的分子不能为0是不是
    }
    if( z>50 && z<=75) {
    strz = "+";
    }
    if( z>75 ) {
    strz = "-";
    if( x1/x2 > y1/y2 ) {

    t = x1;
    x1 = y1;
    y1 = t;

    t = x2;
    x2 = y2;
    y2 = t;//保证减法是大数减去小数
    }
    }

    String strx1 = String.valueOf( x1 );
    String strx2 = String.valueOf( x2 );
    String stry1 = String.valueOf( y1 );
    String stry2 = String.valueOf( y2 );

    String ques = " " + strx1 + "/" + strx2 + strz + stry1 + "/" + stry2 + "=";

    return ques;
    }//getPfQuestion

    结果:

    原因:思路不明,不熟练,要再接再厉。

  • 相关阅读:
    有道云笔记隐藏ad控件
    commons-httpclient直接发送内存中byte[]文件
    springboot打包成zip部署,并实现优雅停机
    Java读取相对路径文件时,报FileNotFoundException异常
    Oracle 添加 scott 示例用户
    Usage and Idioms——Exception testing
    Usage and Idioms——Test execution order
    Usage and Idioms——Aggregating tests in suites
    Usage and Idioms——Test runners
    Usage and Idioms——Assertions
  • 原文地址:https://www.cnblogs.com/xuemo/p/5263159.html
Copyright © 2020-2023  润新知