使用者工具

網站工具


cpp:2024spring:hw1

國立屏東大學 資訊工程系 物件導向程式設計

Turnin作業1

  • Turnin Code: cpp.hw1
  • Due Date: 3/13 12:00AM Hard Deadline

繳交方式說明

本次Turnin作業包含多個程式題,請依照每題所要求的檔名建立檔案,並使用turnin指令上傳作業。當我們完成某一個題目的作答後,就可以使用turnin指令將該題的答案上傳。以第1題為例,當我們完成rounded.cpp的程式設計後,可以使用以下指令將其上傳:

[3:23 user@ws hw1] turnin▴cpp.hw1▴rounded.cpp↵

當然,你也可以等到所有題目都完成後,回到你撰寫作業的資料夾,使用以下指令將所有題目都加以上傳:

[3:23 user@ws hw1] turnin▴cpp.hw1▴.↵

註:本文使用▴及↵代表空白字元與Enter換行字元,並且將使用者輸入的部份使用灰階方式顯示。


p1 四捨五入至整數位

請設計一個C++語言程式rounded.cpp,接受使用者所輸入的一個浮點數後,將其小數部份四捨五入後輸出,其執行結果可參考如下:

[9:19 user@ws hw] ./a.out↵
Floating▴point▴number:▴13.14↵
The▴rounded▴value▴is▴13.↵
[9:19 user@ws hw] ./a.out↵
Floating▴point▴number:▴38.5832↵
The▴rounded▴value▴is▴39.↵
[9:19 user@ws hw] ./a.out↵
Floating▴point▴number:▴8↵
The▴rounded▴value▴is▴8.↵
[9:19 user@ws hw]

p2 溫度轉換

請設計一個C++語言的程式c2f.cpp,讓使用者輸入一個攝氏溫度,計算並輸出對應的華氏溫度(溫度轉換公式為: 華氏 = 攝氏*(9/5)+32),本題的執行結果可參考如下:

[9:19 user@ws hw] ./a.out↵
Celsius:▴42.5↵
Celsius▴42.5=Fahrenheit▴108.5.↵
[9:19 user@ws hw] ./a.out↵
Celsius:▴100↵
Celsius▴100=Fahrenheit▴212.↵
[9:19 user@ws hw] ./a.out↵
Celsius:▴32.342↵
Celsius▴32.342=Fahrenheit▴90.2156.↵
[9:19 user@ws hw]

註:本題如有使用浮點數的需求,請使用double做為相關變數的資料型態。

p3 配速計算

請設計一個C++語言的程式pace.cpp,讓跑者可以輸入路跑的里程距離以及所花費的時間,計算並輸出其配速後輸出。本題的執行結果可參考如下:

[9:19 user@ws hw] ./a.out↵
Distance(KM):42.5↵
Time(HH:MM:SS):04:38:02↵
6'32"▴per▴KM↵
[9:19 user@ws hw] ./a.out↵
Distance(KM):1.04↵
Time(HH:MM:SS):00:06:21↵
6'6"▴per▴KM↵
[9:19 user@ws hw] ./a.out↵
Distance(KM):7.09↵
Time(HH:MM:SS):00:40:03↵
5'38"▴per▴KM↵
[9:19 user@ws hw]

請注意配速的計算結果是跑者此趟每公里所花費的時間,其顯示格式為「分'秒"」。

註:本題如有使用浮點數的需求,請使用double做為相關變數的資料型態。

p4 驗證碼計算

請設計一個C++語言程式verify.cpp,讓COCORO公司的員工輸入一個由5位數字組成的代碼(可以由0開頭),並依據以下要求完成其驗證碼之計算並加以輸出(注意,在以下要求中,5位數之代碼由右到左依序被稱為第一位數d1、第二位數d2、…、第五位數d5):

  1. 將第一位數及第二位數相加後乘以第三位數(d1+d2)*d3
  2. 將第四及第五位數的數值相加(d4+d5)並乘以第五位數
  3. 將第1項的運算結果減去第2項的運算結果
  4. 將第3項的運算結果取絕對值
  5. 將第4項的運算結果的十位數做為驗證碼,並將其結果加以輸出

此題的執行結果可參考如下:

[9:19 user@ws hw] ./a.out↵
Please▴input▴ID:▴54321↵
The▴verification▴code▴of▴54321▴is▴3.↵
[9:19 user@ws hw] ./a.out↵
Please▴input▴ID:▴12345↵
The▴verification▴code▴of▴12345▴is▴2.↵
[9:19 user@ws hw] ./a.out↵
Please▴input▴ID:▴00000↵
The▴verification▴code▴of▴00000▴is▴0.↵
[9:19 user@ws hw]

p5 26進制數字轉換為10進制

假設有一個26進位的數字系統使用a、b、c、…、x、y、z等26個小寫的英文字母做為其數字符號,其中a為10進制的0、b為10進制的1、c為10進制的2、…、x為10進制的23、為10進制的24、z為10進制的25。請設計一個C++語言程式26to10.cpp,讓使用者輸入一個兩位數的26進制數字(請注意!本題的輸入一定會是兩位數的26進制數字),並將其轉換為10進制的數值後加以輸出。 此題的執行結果可參考如下:

[3:23 user@ws hw] ./a.out↵
aa↵
(aa)_26=(0)_10↵
[3:23 user@ws hw] ./a.out↵
ba↵
(ba)_26=(26)_10↵
[3:23 user@ws hw] ./a.out↵
ax↵
(ax)_26=(23)_10↵
[3:23 user@ws hw] ./a.out↵
wu↵
(wu)_26=(592)_10↵
[3:23 user@ws hw]

cpp/2024spring/hw1.txt · 上一次變更: 2024/03/06 06:45 由 junwu

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki