天天看點

2017《面向對象程式設計》課程作業一

課程開始的第一次作業

Deadline: 2017-04-23 22:00

題目描述基礎

在寒假作業三的基礎上,開始重構之路:這次作業的第一步,函數分離和C++基礎。

先回顧下題目描述:

編寫一個能對0--10之間的整數進行四則運算的“軟體”,提供給國小生使用的自主四則運算練習程式。

程式能接收使用者輸入的整數答案,并判斷對錯。

程式結束時,統計出答對、答錯的題目數量。

其中:

  • 0——10的整數是随機生成的。
  • 生成題目數量由使用者輸入。
  • 要求生成混合運算,如(5 - 4 ) * (3 + 8) =?
  • 題目生成後由使用者輸入答案。
  • 使用者用鍵盤輸入一個字元來結束程式的運作并顯示統計結果,比如輸入e程式結束并顯示統計結果

要求:

  • 要求生成四個數字以及若幹個運算符,例如生成的運算式:(5 - 4 ) * (3 + 8),或者(5+3)* 4 * 6
  • 為展現函數分離、子產品化的思想,主函數的設計如下:
main(){

    scan()//該函數用于與使用者互動,擷取輸入資料

    randomNumber()//用于随機生成數字

    randomOperation()//用于随機生成運算符

    generateExpression()//用于生成運算式

    calculateResult()//用于計算生成的運算式的結果

    print()//将統計結果輸出給使用者

  }
           

要求将寒假作業三的代碼進行疊代或重新開始寫,符合以上各個子產品功能基礎上實作整體程式。各個子產品的形參清單、函數傳回值類型可自由定制。

  • 采用C++編碼,特别要求必須采用C++的标準輸入輸出,即cin/cout。指令行輸出和圖形界面輸出都可以。