【软件构造-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