自動的に四則問題初版のレポートを生成します+ 20194684

前提条件要件

それは必要です:CやJava言語は、自動的に完全な四則プログラムに関する質問を生成し、

次のように基本的なソフトウェアの機能があります。

  1. 自動式2数の四則演算を生成する10未満100(+ - * /)、演算結果を100内で必要とされています
  2. 繰り返し式を除きます。2 + 3 + 2及び式3を繰り返し、2、及び3 + 2 + 3が繰り返されていない式
  3. 項目数は、カスタマイズすることができます
  4. 関連するパラメータを制御することができます
    1. 乗算と除算を含めるかどうか
    2. オペランドの制御可能な範囲値
    3. オペランドが負を含むかどうか
  5. result.txtに保存されている外部ファイルのタイトルに操作を生成します

要件分析

幼稚園、先生は何をする子供たちに30日間の加算と減算、乗算、除算のタイトルを尋ねました。だから、私はこれを成し遂げるためにスクリプトを書きたかったです。

機能設計

  • 基本的な機能
    • トピックの設定可能数
    • サポート数学
    • 数の設定可​​能な動作範囲
    • 運転支援の正と負の自然数
  • 拡張
    • その答えは、出力することができます
    • あなたはデジタルでのアイテムの数を制御することができます。
    • 自動的にファイルに保存

設計と実装

オープンソースプロジェクト、オープンソース住所https://github.com/Tomotoes/arithmetic-generator

ダウンロードするには、ここをクリックしてアプリケーションを

次のようにそのプロジェクトライブラリで使用されます:

プロジェクトエントリ機能:

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

おすすめ

転載: www.cnblogs.com/jinma/p/11483298.html