前提条件要件
それは必要です:CやJava言語は、自動的に完全な四則プログラムに関する質問を生成し、
次のように基本的なソフトウェアの機能があります。
- 自動式2数の四則演算を生成する10未満100(+ - * /)、演算結果を100内で必要とされています
- 繰り返し式を除きます。2 + 3 + 2及び式3を繰り返し、2、及び3 + 2 + 3が繰り返されていない式
- 項目数は、カスタマイズすることができます
- 関連するパラメータを制御することができます
- 乗算と除算を含めるかどうか
- オペランドの制御可能な範囲値
- オペランドが負を含むかどうか
- result.txtに保存されている外部ファイルのタイトルに操作を生成します
要件分析
幼稚園、先生は何をする子供たちに30日間の加算と減算、乗算、除算のタイトルを尋ねました。だから、私はこれを成し遂げるためにスクリプトを書きたかったです。
機能設計
- 基本的な機能
- トピックの設定可能数
- サポート数学
- 数の設定可能な動作範囲
- 運転支援の正と負の自然数
- 拡張
- その答えは、出力することができます
- あなたはデジタルでのアイテムの数を制御することができます。
- 自動的にファイルに保存
設計と実装
オープンソースプロジェクト、オープンソース住所:https://github.com/Tomotoes/arithmetic-generator
ダウンロードするには、ここをクリックしてアプリケーションを。
次のようにそのプロジェクトライブラリで使用されます:
- ツール:プロジェクト-ロンボク
- パッケージマネージャ:Gradleの
- コマンドラインの構文解析:ApacheのコモンズCLI
- スクリプトの実行:EvalEx
プロジェクトエントリ機能:
package com.tomotoes;
import lombok.val;
public class Main {
public static void main(String[] args) {
Option option = Args.parse(args);
Generator generator = new Generator(option);
val arithmetics = generator.getArithmetics();
Log log = new Log("./result.txt");
arithmetics.forEach(log::toFile);
log.close();
}
}
ここでArgs
、コマンドライン引数を解析するため、およびに構成されたOption
対象
Option
クラスは、統一された構成情報の項目です
Generator
4つの演算式を生成するための責任を負うクラス
public void generate() {
StringBuilder formula = new StringBuilder();
IntStream.range(0, quantity).forEach(i -> {
String num = number.getRandom();
val isDiv = formula.toString().trim().endsWith("/");
if(isDiv){
while ("0".equals(num)) {
num = number.getRandom();
}
}
formula.append(number.getRandom());
if (i != this.quantity - 1) {
formula.append(' ').append(operator.getRandom()).append(' ');
}
});
if (!arithmetics.contains(formula.toString())) {
this.arithmetics.add(formula + " = " + Script.resolve(formula.toString()));
return;
}
generate();
}
Log
このクラスは、結果を印刷するための責任がある、との結果を保存します
テスト実行
追伸
ええと...〜のJavaホイール丸み
PS:あなたが開発する他の言語を使用することができます...
PSP
PSP2.1 | 概要 | 计划完成需要时间(min) | 实际完成需要时间(min) |
---|---|---|---|
Planning | 计划 | 5 | 10 |
Estimate | 估计时间,规划步骤 | 5 | 10 |
Development | 开发 | 30 | 145 |
Analysis | 需求分析 | 5 | 20 |
Coding | 具体编码 | 20 | 120 |
Test | 测试 | 5 | 5 |
Reporting | 报告 | 20 | 40 |
Postmortem&Process Improvement Plan | 总结改进 | 20 | 40 |