ミッションの要件:CやJava言語を使用すると、自動的に手順の完全な四則質問を生成します。次のように基本的なソフトウェアの機能があります。
( - * / +)、演算結果を100内で必要とされている(1)自動式2数の四則演算が10未満100生成
(2)複製式を破棄する。= 2 + 3 + 3 = 2及び式2が繰り返され、3 + = 3 + 2 =繰り返さない式
番号(3)タイトルをカスタマイズすることができます
(4)パラメータを制御することができます
乗算と除算を含めるかどうか
オペランドの制御可能範囲の値(例えば1000 100内又は内オペランド)
オペランドが負を含むかどうか
(5)result.txtに格納されている外部ファイルのタイトルに動作を生成します
A.要件分析
応答では、程度の学生を4つの操作のための身近な実践を習得負担セッターを減らすため、プログラムが自動的にタイトルの4つの操作を書くことができます設計します。
II。機能設計
- 基本的な機能
- 自動的に式の数を生成します
- ランダムに生成されたシンボルの算術式
- 拡張
- 自動的に計算及び算術答えが所与を生成するための演算式
- 負がある場合、演算式を制御することができます
- 発現、乗算および除算があるか否かを制御することができ、演算式
- 最後に、生成された結果はresult.txtファイルに簡単に表示するために保存されます
- 演算式は、その動作範囲を制御することができます。
III。設計と実装
- C言語
- 見積もりに<stdio.h>ライブラリー
- 引用<TIME.H>図書館
- 引用<stdlib.h>に含ま図書館
- そして、2マイナス算出した負の値そのもの星を掛け
- 出力値を格納するための関数fopen
IV。テスト実行
内部の出力テキストでのテスト実行結果とパフォーマンス内側コンソールで
V.スニペット
ランド()は、ランダム値を生成するnの値を得るためにそれを使用し、計算し、次式OPに対応割り当てることができます。
用(= 0 ; <サイズ; ++ ) { I =ランド()%のZ + 1 。 J =ランド()%のZ + 1 。 N =ランド()%4 。 もし(N == 0){OP = ' + '。Q = I +は}; jで あれば(N == 1){OP = ' - '。Q = I- J;} もし、(N == 2){OP = ' * '。Q =私は* }; jで あれば(N ==します3){OP = ' / '。Q = I / J;} のprintf(" %dの%Cは%D =%d個の\ n " 、I、OP、J、Q)。 関数fprintf(FP、" %D%以下のCの%のD =%d個の\ n " 、I、OP、J、Q)。 }
あなたが否定生成したい場合は、上限は2を掛けた後、自分自身を減算され、必要な答えです。
I =ランド()%(2 * Z)-z + 1 。 J =ランド()%(2 * Z)-z + 1 。 N =ランド()%2 。 もし(N == 0){OP = ' + '。Q = I +は}; jで あれば(N == 1){OP = ' - '。Q = IJ;}
VI。まとめ
もう少し裁判官は文章場合は、独自のを書く、と私は悪い習慣によって引き起こされたコメントは、時々私はちょうど彼らが書いたものを理解することができませんでしたが、これは初めての経験と訓練の後、私は次の時間は、私が元に基づいてのことができるようになると信じて書きましたもっと良いです。
七。PSP
PSP |
概要 |
計画時間(分)の合計を完了するために必要 |
完了するために必要な実際の時間(分) |
プランニング |
計画 |
8 |
6 |
推計 |
これは、タスクは、一般的手順を作業に多くの時間と計画が必要と推定しました |
8 |
6 |
開発 |
開発 |
66 |
64 |
分析 |
(新しい技術を学ぶ含む)ニーズ分析 |
6 |
10 |
設計 |
具体的な設計 |
10 |
12 |
コーディング |
具体的なコーディング |
40 |
30 |
テスト |
検査(セルフテスト、コードを変更し、変更を提出) |
10 |
12 |
報告 |
レポート |
3 |
3 |
死後&プロセス改善計画 |
その後まとめ、およびプロセス改善計画 |
3 |
3 |