2012-10-03 102 views
-1

我試圖做一些C++編程和下面的行給了我一個「浮點異常」在運行時:浮點異常C++

realAnswer=(0-720+5*1440)/((775-720)/(750-720))+720; 

什麼引起的問題? (realAnswer是一個雙)

編輯:加斜槓

+1

對我來說工作得很好 – SingerOfTheFall

+0

我發現這個問題,這是一個使它失敗的行之前感謝大家的建議 – tehwalris

回答

2
從丟失的*是斯托指出,您的計算使用了,而你只整數

除了希望得到一個雙。你現在得到的答案是向下取整(723)。

以下將爲您呈現我假設您正在尋找的雙精度。我已經通過編譯和運行測試了這個:

realAnswer=(0.0-720.0+5.0*1440.0)/((775.0-720.0)*(750.0-720.0))+720.0; 

這就給出了723.927。

3

你缺少一個*:

realAnswer=(0-720+5*1440)/((775-720)*(750-720))+720; 
+0

你怎麼知道它是'*'? – SingerOfTheFall

+0

好吧,我不這樣做,但通常在你寫手寫公式時忽略* –

+0

@SingerOfTheFall,想必這是因爲考慮到數學中的原因。也許這是一個錯字。 – chris