四則運算題目生成程式

2021-09-26 02:29:40 字數 2162 閱讀 2090

a.需求分析

看了大家對於本課程的目標和規劃,很多同學都希望能提高自己的實踐能力,沒有捷徑可走,就是練習、練習再練習!那麼就從第乙個個人專案開始吧,用一周的時間完成乙個基於控制台的四則運算程式,實現乙個自動生成小學四則運算題目的命令列程式

從《構建之法》第一章的 「程式」 例子出發,像阿超那樣,花二十分鐘寫乙個能自動生成小學四則運算題目的命令列 「軟體」,滿足以下需求:

除了整數以外,還要支援真分數的四則運算,真分數的運算,例如:1/6 + 1/8 = 7/24

運算子為 +, −, ×, ÷

並且要求能處理使用者的輸入,並判斷對錯,打分統計正確率。

要求能處理使用者輸入的真分數, 如 1/2, 5/12 等

b.功能設計

c.設計實現

mathstart  控制台的輸入輸出,將表示式寫入檔案,引用需要使用的類,將表示式的key存放入hashtable判重

express     生成表示式,運算結果,判斷表示式是否不符合要求,生成表示式的key。

answerlogin   對比答案是否正確,可匹配小數,正整數,分數,帶分數,若不是以上則輸入失效,要求重新輸入。

d.**說明

num,oper隨機生成。

括號一定在數字的左右兩邊,按左括號,數字,右括號,運算子的順序加入表示式;

tranexp是將表示式轉為字尾表示式,方便計算。

運算的過程**短,行數多,簡述一下,就是將字尾表示式中,取數字放入a陣列中,遇到運算子取a中兩個數,結果放回a中。像棧一樣先進後出。

在字尾表示式中遇到『+』或『*』時,判斷前面兩個數值大小,將小的數放到前面。生成乙個string的key。

缺陷,只能判斷符號兩邊是數字的,不能判斷符號邊是表示式的如:(1+2)+(1/2)與(1/2)+(1+2)。

以上判定答案輸入,根據正規表示式驗證輸入是否符合要求,符合則設定inputerr=false。當輸入是小數時得到他的精度。分數精度為0.

當是分數時判斷是否分母大於分子,不能再約分,分子分母不能為零。

最後進入login,判定答案是否正確。

e.測試執行

6 repeat 9 即第7與第10重複。後面更改一下。

psppsp2.1

personal software process stages

time senior student

time

planning

計畫20

20estimate

估計這個任務需要多少時間55

development

開發4000

4000

analysis

需求分析 (包括學習新技術)

2010

design spec

生成設計文件

5010

design review

設計複審21

coding standard

**規範11

design

具體設計

2030

coding

具體編碼

4500

4700

code review

**複審108

test

測試(自我測試,修改**,提交修改)

50120

reporting

報告60

120測試報告

2445

計算工作量35

並提出過程改進計畫810

四則運算題目生成程式

一.作業資訊 部落格班級 作業要求 homework 11377 作業目標 寫乙個四則運算出題程式 學號 3180701201 目錄三.提交與截圖 int a 3000 int w 4000 int q 0 int v 0 int o 0 int measure int x,int y 整數 voi...

四則運算題目生成程式(一)

部落格班級 軟體工程 作業要求 作業要求 作業目標 寫乙個能自動生成小學四則運算題目的程式 學號 3180701218 include include include include include define epsilon 0.000001 根據精度需要 int n 0 int n 0 使用者...

四則運算題目自動生成程式

四則運算表示式生成器 目錄 專案參與者 羅泉水3118005101陳鴻暢3118005087psp2.1 personal software process stages 預估耗時 分鐘 實際耗時 分鐘 planning 計畫30 estimate 估計這個任務需要多少時間 30developmen...