發信人Crazy.bbs@bbs.cs.nctu.edu.tw (ξ落入凡間的精靈ξ),
看板C_Sharp
標 題Re: [問題] 練習題
發信站交大資訊次世代BS2 (Fri May 4 00:27:26 2007)
轉信站ptt!ctu-reader!ctu-peer!news.nctu!news.cis.nctu!BS2
溫度轉換的題目,是說請將攝氏溫度轉華式溫度。
(轉換公式 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