3-3 算術運算子
3-3-1 算術運算子彙集 基本算術運算子包含一般數學的加法 ( + )、減法 ( - )、乘法 ( * )與除法 ( / ),在計算機運算裡增加一個除法餘數 ( %,或稱『模數』運算子 ),而其資料型態可以是 byte、short、int、long、float、double與char,其中 char 型態於運算時會轉成ASCII碼,表 3-1是一些基本算術符號,可能會出現正、負號與加、減符號相同,運算式會自動去判斷。 表 3-2 基本算術運算子
算術運算子大多必須與『指定運算子』(=)配合使用,常用運算式型態彙集如下:
3-3-2 範例探討:計算股票平均價格 (A)程式功能:Ex3_2.java 當分析師選定某一支股票作為標的物後,則需紀錄該股票每天的股價多寡,並計算 5 日(一般都需紀錄 5、10、20、30 日)股價平均價格如何。請您幫他製作一套登錄及計算系統,可連續輸入 5 個交易日的收盤價,並隨時顯示當日的平均價格為何,最後輸出 5 日平均股價。期望系統運作模式如下:
(B)製作技巧研討: 股票 5 日平均價算法是當天之前 5 個交易日價錢的平均,本系統執行之前並沒有資料,只好每天輸入股價後,隨時計算出平均價,到第 5 天則可得到 5 日平均價;因此,每天輸入價格後,計算出從第 1 天到該日的總額及平均價 (C)程式範例:
(D)程式重點分析:
3-3-3 自我挑戰:學期成績計算程式 (A)程式功能:PM3_1.java 資管系二年級這學期開了電腦概論(2 學分)、程式設計(3 學分)、離散數學(3 學分)、國文(2 學分)、英文(2 學分),共計 5 門課 12 學分。請建立一套系統,讓學生自行輸入各科成績,能計算並印出出該同學學期總平均多寡。期望使用操作介面如下:
(B)製作技巧提示: 吾人可利用一個累積變數(sum),每筆資料讀入,再與它的學分數相乘後,累計到累積變數內;最後再乘以總學分數,即可得到總平均分數,程式重點提示如下:
題目要求平均分數必須包含小數點第二位,平均分數的變數需採用浮點數(float),因為整數相除只能得到整數,所以必須讓整數除以浮點數(12.0F),才會得到浮點數的結果。 3-3-4 範例研討:超商找錢工具 (A)程式功能:Ex3_3.java 請建立一個超商找錢工具,系統要求輸入購買總金額之後,再要求輸入已收金額(大於購買金額),請輸出 100 元、50 元、10 元、5 元、1 元的零錢各需找多少。期望操作介面如下:
(B)製作技巧研討: 本書到目前為止還未介紹到判斷大小的敘述句,因此假設繳納金額大於消費金額;繳納金額扣除消費金額,則為應找金額。吾人利用整數除以整數,僅得到整數結果的特性(譬如,431 / 100 = 4),來計算各項零錢的數目,再利用乘法計算剩餘的錢(431 – 100*4 = 31)多寡(也可利用求餘數 % 運算子計算)。 (C)程式範例:
(D)程式重點分析:
3-3-5 自我挑戰:超商收銀機系統 (A)程式功能:PM3_2.java 請製作一套超商收費系統,假設客戶僅購買衛生紙(每包 32 元)、口香糖(每包 12 元)、可樂(每瓶 18 元)、與熱狗(每支 17 元),系統會依序顯示各項產品單價,要求輸入購買數量,輸入完成後系統顯示總金額多寡。接著系統要求輸入客戶繳交金額,再計算出應該找多少零錢(100、50、10、5、1 元 的數量)。期望系統操作介面如下:
(B)製作技巧提示: 此系統也需要累積計算來達成,吾人宣告一個累積變數 total=0(初始值為 0)。接著輸入購買產品數量,則計算該項金額(單價 * 數量)後累加到累積變數上(如 total = total + item * 32);最後計算出總購買金額,並要求輸入『繳納金額』。繳納金額扣除購買金額,剩下的即是應找金額,再參考範例 Ex3_3.java,計算出各個零錢數量多寡。重點提示如下
|
翻轉工作室:粘添壽
Java 程式設計(一) 含程式邏輯
翻轉電子書系列:
|