[問題] 浮點數運算問題

看板C_and_CPP (C/C++)作者 (褲襪脫落大尉)時間14年前 (2012/04/30 15:31), 編輯推噓0(0012)
留言12則, 5人參與, 最新討論串1/1
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) dev c++ 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) iostream,cstdlib 問題(Question): 出來的資料是科學記號看不懂 餵入的資料(Input): 20 預期的正確結果(Expected Output): 20*33.23=664.6 錯誤結果(Wrong Output): 2.50222e-036 程式碼(Code):(請善用置底文網頁, 記得排版) http://ideone.com/rfblT #include <iostream> #include <cstdlib> using namespace std; int main() { float USD; float NTD; float EX=33.23f; int n; cout << "目前匯率 1USD=33.23*NTD" << endl; cout << "請輸入你要換算的美元數:"; cin >> n; cout << "這是你輸入的美元數:" << n << endl; USD=n*NTD*EX; cout << "這是換算出來的台幣數:" << float(USD) << endl; system("pause"); return 0; } 補充說明(Supplement): 請建議哪裡的想法錯誤,要重看洪維恩 c++ ver.3 哪裡,謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 123.204.159.106

04/30 15:39, , 1F
你算東西的那行.... 是在幹嘛? 美=n*台*匯率???
04/30 15:39, 1F

04/30 15:40, , 2F
NTD有給預設值嗎?
04/30 15:40, 2F

04/30 16:39, , 3F
k大,我是在做換算
04/30 16:39, 3F

04/30 16:40, , 4F
a大,nTD我?給預設值
04/30 16:40, 4F

04/30 16:40, , 5F
04/30 16:40, 5F

04/30 16:48, , 6F
置底十三誡第一條囉
04/30 16:48, 6F

04/30 17:51, , 7F
謝謝各位大大的指導,我把 NTD、USD初值都設1後,輸
04/30 17:51, 7F

04/30 17:51, , 8F
出值就正常了!謝謝!
04/30 17:51, 8F

04/30 18:40, , 9F
建議原PO在幫變數命名的時候,讓名子和變數存的東西一致
04/30 18:40, 9F

04/30 18:41, , 10F
例如最後被印出來的變數叫做USD,但其實存的是台幣數
04/30 18:41, 10F

04/30 18:43, , 11F
現在NTD存的是1,是個常數,跟台幣數無關,卻叫NTD
04/30 18:43, 11F

04/30 18:46, , 12F
意義和實際作用不一致,在閱讀上可能會造成誤導
04/30 18:46, 12F
文章代碼(AID): #1FdZ_Wln (C_and_CPP)
文章代碼(AID): #1FdZ_Wln (C_and_CPP)