第三次作業 個人專案 小學四則運算 「軟體」

2022-05-14 22:42:07 字數 2299 閱讀 7334

本次作業要求來自:

具體要求:任何程式語言都可以,命令列程式接受乙個數字輸入,然後輸出相應數目的四則運算題目和答案。例如輸入數字是 30, 那就輸出 30 道題目和答案。 表示式子必須至少有兩個運算子,運算數字是在 100 之內的正整數,答案不能是負數。 如:23 - 3 * 4 = 11

1.需求分析

1.實現以正整數組成的3個運算子的四則等式

2.結果必須大於0,結果精確到小數點後一位。

3.可以隨使用者輸入具體的題目數

4.可判斷使用者輸入值的對錯,並給出使用者的正確題目數和準確率

5.要求能出和真分數 (二分之一, 十二分之五,等)相關的練習題

2.功能設計

1.給定乙個引數,由使用者自定義,進行迴圈輸出隨機四則運算

2.判斷使用者輸入值對錯

3.計算使用者的正確題目數和準確率

運算方法:四則運算的的優先順序,即確定優先*,/,後+,-

同時,還要判斷使用者輸入對錯,若對則y++(計算正確條數+1)

運算子和運算操作方法:

為了讓運算子為1-4,即+,-,*,/,

同時定義兩引數,根據運算子的不同進行運算操作

示例:一.在主函式中,定義引數n,由使用者輸入,while(counter

void

main()

}while(counter

last=(float)y/(float)n*100

;printf(

"你答對的題目條數為:%d。\n準確值:%.1f%。\n

",y,last);//

對最後結果的輸出

system("

pause");

}

二.在jisuan()函式中,通過用if()優先判斷①是否*,/ ,再判斷②是否*,/,即可優先運算

if(c>2)

else

}

在邏輯思考中,我認為如果四則運算中有(),可利用switch()方法,用case羅列更簡單些,目前需求中不需要括號,就不用了

在判斷使用者輸入對錯時,用if(fabs(e-d)>0.1)結果比較精確一位即可。

三.由於程式比較簡單,**亦有注釋,就不多說了

問題1:當exe檔案脫離c++環境而單獨開啟時,往往在最後執行時直接關閉

解決:在main函式末尾加 system("pause"); 使得程式執行完畢之後可以停留。

問題2:結果的值與使用者輸入值的對比,精確度不高

解決:為保持結果除法時的正確性用了絕對值fabs(),使結果精確到小數點後一位

問題3:運算子優先順序邏輯思維不一樣,導致本來的**更冗長一些

解決:初始想法,2個運算子有4種情況,即以switch(),case方法

後改成用if()優先判斷①是否*,/ ,再判斷②是否*,/,這樣的話,**盡可能少一些。

問題4:容錯率低,如果用臉滾鍵盤的話,肯定報錯

解決:由於只是初步設計,需要不斷更新才能進一步優化,需要以後改進。。。

psp2.1

personal software process stages

time senior student(h)

time(h)

planning

計畫0.5

0.5· estimate

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

development

開發1.5

· analysis

需求分析 (

包括學習新技術

)0.01

0.01

· design spec

生成設計文件

0.50.5

· design review

設計複審

0.10.1

· coding standard

**規範

0.10.1

· design

具體設計

0.50.3

· coding

具體編碼

3.5· code review

**複審

0.10.3

· test

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

0.10.1

reporting

報告0.5

0.6test report

測試報告

·workload

計算工作量

0.3·correction

並提出過程改進計畫

第三次作業 個人專案 小學四則運算「軟體」

本次作業要求來自於 一 題目要求 像 構建之法 的人物阿超那樣,寫乙個能自動生成小學四則運算題目的命令列 軟體 具體要求 任何程式語言都可以,命令列程式接受乙個數字輸入,然後輸出相應數目的四則運算題目和答案。例如輸入數字是 30,那就輸出 30 道題目和答案。表示式子必須至少有兩個運算子,運算數字是...

第三次作業 個人專案 小學四則運算 「軟體」之初版

一 題目要求 像 構建之法 的人物阿超那樣,寫乙個能自動生成小學四則運算題目的命令列 軟體 具體要求 任何程式語言都可以,命令列程式接受乙個數字輸入,然後輸出相應數目的四則運算題目和答案。例如輸入數字是 30,那就輸出 30 道題目和答案。表示式子必須至少有兩個運算子,運算數字是在 100 之內的正...

第三次作業 個人專案 小學四則運算 「軟體」之初版

本次作業要求來自於 具體要求 任何程式語言都可以,命令列程式接受乙個數字輸入,然後輸出相應數目的四則運算題目和答案。例如輸入數字是 30,那就輸出 30 道題目和答案。表示式子必須至少有兩個運算子,運算數字是在 100 之內的正整數,答案不能是負數。如 23 3 4 11 psp2.1 person...