[情報] HW#7 的中文說明書

看板EE_DSnP作者 (Ric)時間15年前 (2008/12/06 10:42), 編輯推噓4(405)
留言9則, 4人參與, 最新討論串1/1
這個作業就是要從 standard input 讀字串進去, 然後轉換成 double 存起來. 題目首先要求你宣告一個 class Str2Double, 並宣告一個 member function readValue() 從 standard input 讀字串進去, 由於是從 standard input 直接讀 字串, 所以不需要傳參數, 而且在這個 function 裡面就將字串轉換成 double, 所以 class Str2Double 裡面也不用有 data member 來存此字串. 此外, readValue() 這個 function 必須檢查輸入的字串是否為合理的浮點數, 比方說是否有多個小數點, 或是非數字的字元等等, 題目要求要產生的錯誤訊息, 請見題目說明檔. 如果輸入的字串是合法的, 那麼你應該可以判斷他小數點以下 有幾位數, 然後將這個位數存在 Str2Double::_precision 這個 data member 上, 好讓 print() 這個 function 印出適當的位數. 在轉換成 double 時, 要注意精確度的問題. 基本上你應該會有許多整數到浮點數 之間的轉換, 以及浮點數本身的運算. 要注意的是如果做太多次浮點數運算, 你的誤差會越來越大. 你可以跟 atof() 這個 standard lib 裡面的 function 比對一下你的精確度, 但是不可以直接用它或是相關的 functions. 最後還有一個規定, 就是請不要增加 public member functions 以及任何 data members. 不過如有需要請自行增加 private member functions. -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 59.121.128.244

12/06 10:48, , 1F
喔喔 還好同學有問 老師有PO 不然我就走錯方向了
12/06 10:48, 1F

12/07 02:17, , 2F
不需要存字串? 是我搞錯老師意思嗎?
12/07 02:17, 2F

12/07 02:19, , 3F
不存字串怎麼轉呀 @@
12/07 02:19, 3F

12/07 02:26, , 4F
readValue() 裡面還是得宣告一個string吧 @@
12/07 02:26, 4F

12/07 09:51, , 5F
不需存成 data member, 但是當然要存成 local variable 啊
12/07 09:51, 5F

12/09 22:05, , 6F
不把string存成data member的話,要用誰呼叫atof???
12/09 22:05, 6F

12/09 22:05, , 7F
(拿來和自己的轉換比較用的)
12/09 22:05, 7F

12/09 22:52, , 8F
就用 local variable 啊!
12/09 22:52, 8F

12/09 22:52, , 9F
BTW, to call atof(), you may need atof(str.c_str())
12/09 22:52, 9F
文章代碼(AID): #19EUQOT9 (EE_DSnP)