
| 簡易計算機 |
|
電腦最簡單基本的應用就是計算數字,如果我想知道5789+1843的計算結果,可以直接開啟一個Console專案,在主程式(Main)裡面寫兩行程式: Console.Write(5789+1843); Console.Read(); 答案是 7632,很簡單吧? 再試試看計算: 1/3和 1/3.0 的結果有何不同? 前者會以整數計算答案是0;後者是0.333333... 這是唯一應該注意的小地方,就是電腦會根據你給不給小數點決定用整數或『浮點數』(有小數部分)處理。 其他和用計算機差不多,事實上還厲害一點點,試試看計算: (1+3)/(5.0-3.2) 答案2.2222...,再多幾層括號它一樣會算! |
|
數值資料型態與宣告: |
|
當然所謂的程式應該是可以反覆使用,不能為了一個題目就要寫一整個程式,這太沒效率了! 要將程式變成可以反覆使用,首先必須將計算的數字變成『變數』,而且必須講清楚(宣告)變數的資料型態, 我們的目標是寫一個可以輸入兩個數字,然後相加的程式,先宣告兩個整數的變數,寫法是: int A; int B; int 表示整數資料型態,A與B是變數名稱,可以自己取名如 MyNumber 等等,但要避開程式語言中的保留字,譬如Console代表主控台,你就不能用它當變數名稱,避免衝突。 如果要宣告為浮點數(有小數部分的數字),只需要把上面的 int 改成 float 即可。 你也可以在宣告變數時直接寫出它預設的數字,如: int A = 1; float B =3.3f; 或 float B = 3.3d; 注意到在浮點數宣告時,因為實際上還分為 float 和 double 兩種資料型態,前者比較粗略(7位有效數字),後者較精準(15位),所以必須在數字後面加上 f 或 d 分別代表 float 或 double。 請試試看以下的程式碼: float a=1.0f; float b=5.5f; Console.Write(a+b); 一個圓面積計算程式可以是: float pi = 3.1415926d; float r = 5.0; Console.Write(pi * r * r); 想想看矩形、三角型或梯型的計算公式應該如何變成程式??? 記得要驗算哦!電腦大概不會算錯,但是我們常會寫(打)錯! |
|
算術運算子: 加減乘除:+, -, *, /,如1+2,3/4等等 次方:Math.Pow(2,3)這是2的3次方的意思。小數次方也可以,Math.Pow(2,0.5)就是根號2了!(Pow是Power次方的縮寫) 取餘數:%,如 8%5的結果應該是3 括號:( ),如(2+3)*8,請注意不論幾層都用小括號,中括號和大括號在程式中有不同的意義。 |
|
關係運算子: 通常用於比較數值大小,可以視為運算式,答案只有對(True)與錯(False)兩種狀況 < 小於 > 大於 <= 小於等於 >= 大於等於 == 等於 (連續兩個等號) != 不等於 試試看下面的程式碼: Console.Write(1>2) 答案→ False Console.Write(1<2) 答案→ Ture True與False也是一種資料型態稱為 bool (布林變數) 所以程式: bool b; b = 1 > 3; Console.Write(b); 答案是 False |
|
互動程式 上面的程式基本上只是幫你列出式子計算你要的結果,如果下次要作類似題還是必須修改程式中的變數。 但是如果變數可以在程式執行過程中由使用者輸入,那意義就不同了!變成了互動程式,而且任何其他人都可以使用, 不需要每次都改程式。要達到目的請用上述的加法程式修改如下: float a; a= float.Parse(Console.ReadLine()); float b; b= float.Parse(Console.ReadLine()); Console.Write(a+b); 其中 Console.ReadLine 表示要讀入(Read)一串字元(Line),也就是可以在鍵盤上打一串字,然後按 Enter 通知電腦輸入完畢! 在這個例子中,我們輸入的『一串字元』當然是我們要計算的數字,但是電腦不會自動知道,所以必須使用指令將字串轉換成可以加減乘除的數字! float.Parse 就是將字串轉換(Parse)成為浮點數(float)的指令,轉好之後定義給變數 a (或b)。 在此提醒一下,寫程式的計算式雖然很像數學公式,但是用法不太一樣,基本上方向相反! 數學上,等號左邊的計算結果輸出於等號右邊! 程式上,等號右邊的計算結果輸出於等號左邊! 執行上述程式應該可以完成互動加法程式,如果再加上輸入前的提示文字就更好了!譬如: Console.Write("請輸入加法的第一個數字:"); float a; ........... Write的變數嵌入寫法: 上例中試試看將輸出寫成→ Console.Write("{0} + {1} = {2}", a, b, a + b); 如果你先後輸入1與2結果會是→ 1 + 2 = 3 {0}~{2}代表變數位置,此例中依序是 a, b, a + b |
|
範例程式實作: 1.輸入華氏溫度,計算攝氏溫度。 公式:攝氏=(華氏-32)*5/9 2.先後輸入身高與體重,計算BMI值。 公式: 體重(公斤) / 身高2(公尺2) 3.先後輸入英呎與英吋,計算公分值。 公式:1英尺=12英吋;1英吋=2.54公分 |
|
本節提要: 1.數值常數的四則運算。 2.數值變數的意義與宣告 3.簡易數學公式的程式化。 4.主控台模式的程式輸出入互動。 |
|
更多的數值資料型態...
C# 支援九種整數類資料型別:sbyte、byte、short、ushort、int、uint、long、ulong
和
char。分別擁有下列大小和範圍的值:
浮點數型別方面有:
|