【软件构造-java编写】生成50道100以内加法/减法算式的习题,并输出。(和不能超过100,差不能小于0)
生活随笔
收集整理的这篇文章主要介绍了
【软件构造-java编写】生成50道100以内加法/减法算式的习题,并输出。(和不能超过100,差不能小于0)
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
原题
生成50道100以内加法/减法算式的习题,并输出。
(1)每个算式还需要答案;
(2)加法算式的和不能超过100;
(3)减法算式的差不能小于0;
(4)每行整齐地多显示几个算式,不必频繁地下拉屏幕看算式。
提交编写的代码和运行结果截图。
代码
为了使得代码提高可读性,使用了枚举,有关java中怎样随机访问enum可参考以下链接:
https://bbs.csdn.net/topics/320121564 package chapter02.commit;/*** Created by IntelliJ IDEA.* Author: hmxn* Date And Time: 2022/3/13 20:21* describe: 表示计算符号的枚举类**/ public enum OP {ADD, SUB } package chapter02.commit;/*** Created by IntelliJ IDEA.* Author: hmxn* Date And Time: 2022/3/13 19:53* describe: 算式 Bean 类**/ public class Equation {private int lNum; // 左边的数字private int rNum; // 右边的数字private OP op; // 运算符private int ans; // 答案/*** 传入两个数字和运算符得到答案 ans* @param lNum* @param rNum* @param op*/public Equation(int lNum, int rNum, OP op) {this.lNum = lNum;this.rNum = rNum;this.op = op;if (OP.ADD==op) {this.ans = lNum + rNum;} else if (OP.SUB==op) {this.ans = lNum - rNum;}}/*** 格式化输出* @return 格式规整的带有答案的计算式*/@Overridepublic String toString() {return String.format("%3d %s %-3d = %3d", lNum, OP.ADD==op?"+":"-", rNum, ans);} } package chapter02.commit;import java.util.ArrayList; import java.util.List; import java.util.Random;/*** Created by IntelliJ IDEA.* Author: hmxn* Date And Time: 2022/3/13 19:49* describe: 主函数在此处,输出题目要求结果**/ public class GenerateEquation {public static void main(String[] args) {int lNum;int rNum;OP[] ops = OP.values(); // 获得计算符号枚举数组OP op;Random random = new Random();List<Equation> equations = new ArrayList<>();// 得到50个符合题目要求的计算式for (int i = 0; i < 50; i++) {do {lNum = random.nextInt(100) + 1; // 获得随机数[0,100]rNum = random.nextInt(100) + 1; // 获得随机数[0,100]op = ops[random.nextInt(ops.length)]; // 获得计算符号枚举数组中的随机值} while ((lNum + rNum > 100) || (lNum - rNum < 0)); // 和>100或差<0会再次循环equations.add(new Equation(lNum, rNum, op)); // 将符合条件的计算式添加到集合}// 按一定格式输出50个计算式int cnt = 0;for (Equation equation : equations) {if (cnt % 5 == 0) {System.out.println("");} else {System.out.print(equation+" ");}cnt++;}}}运行结果
总结
以上是生活随笔为你收集整理的【软件构造-java编写】生成50道100以内加法/减法算式的习题,并输出。(和不能超过100,差不能小于0)的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: 清华硕士炮轰字节恶意开低薪:“月薪2万,
- 下一篇: 网卡解决network和NetworkM