看板 C_Sharp 關於我們 聯絡資訊
溫度轉換的題目,是說請將攝氏溫度轉華式溫度。 (轉換公式 f=9/5*c+32) 那我的作法如下: namespace C3_2 { class Program { static void Main(string[] args) { string sa; double x,a; Console.Write("請輸入攝氏溫度 : "); sa=Console.ReadLine(); a = double.Parse(sa); x = (float)9 / 5 * a + 32; Console.Write("轉換的溫度為 : {0}", x); Console.ReadLine(); } } } 疑問的是在黃色的部分 如果我寫成 x=(float)(9/5)*a+32; 那麼答案就怪怪的,比如我輸入 5 正確的輸出是41 可是寫成 x=(float)(9/5)*a+32; 卻是37 我在想 是因為x=(float)(9/5)*a+32; 黃色括弧的關係嗎?可是系統怎麼會判斷 哪個先做? 哪個後做? 還是說不能用數學的想法去寫這斷公式? -- ▄▄▄▄▄▄▄ ▄▄▄▄ ▄▄▄▄▄▄ <telnet://bbs.cs.nctu.edu.tw> █▄▄▄▄█ █ ▄▄▄▄▄█ Player: Crazy ▄█▄▄▄▄█ ▄▄▄█ █▄▄▄▄▄ From: 203-73-66-74.adsl.dynamic.s ☆ 次世代BS2 ☆ 可申請個人板 150MB 相簿 http://pic.bs2.to 交大資訊人 250MB
birdychang:對 (9/5)會判斷成整數除法=1 05/04 02:18
birdychang:(float)9 / 5 會先把9轉成float再除5就會是float除法 05/04 02:19
tomex:((float)9) / 5 => 這樣不是更清楚嗎? 05/04 03:06
GreatShot:這篇轉信來的 推文他看不到喔 XD 05/04 06:10