請同學製作出一個 BMI值計算程式,版面與操作過程如範例,
範例下載:[ Download ]
製作流程與提示項目
○設定Form底色
○設定Form的Events中的OnActive事件 (此為讀取該form時自動引發)
○撰寫歡迎程序
- ShowMessage() 顯示歡迎頁面
- InputBox) 輸入使用者名稱 (利用一個全域變數儲存)
- MessageBox() 確認使用者名稱( 請使用PChar()函式進行名稱確認))
- 若正確,即進入頁面
- 若錯誤,回到InputBox重新輸入
- (使用While進行迴圈確認)
- 設定標題Label並編輯內容
- 設定Edit 以輸入身高體重
- 製作Button做為分析與結束使用
- 設定一個GroupBox元件做為輸出
- 製作Label並設定標題內容,label有以下幾個:
- 打招呼標題
- BMI值顯示
- (預設一開始看不見 Visible = false )
- 製作一個Memo元件做為結果判斷使用 (預設一開始看不見 Visible = false )
○撰寫分析Button程式
- 建立全域變數 :
- result : String;
- bmi : Real;
- 判斷兩個Edit元件是否有輸入值 (使用IF ELSE 判斷式)
- 若無,便以showmessage()告知
- 若有,便繼續
- 取得兩個Edit元件中的值並將文字型態轉為Float型態(StrToFloat() )
- 計算BMI值,公式如下:
- BMI = 體重 (KG) / 身高 (M^2)
- Hints:
- M為公尺,故輸入為公分必須先除以100
- 平方請用 sqr() 函式
- 打開GroupBox中的Label招呼元件,並顯示出使用者名稱招呼 ( 要加上username)
- 打開BMI顯示Label,並顯示BMI值 (需將Float轉回Str才能輸出)
- 打開招呼Label與Memo
- 依據BMI值設定輸出於Memo的文字,(使用IF判斷,並以一個string變數儲存):
- bmi < 15 ,Memo顯示:'過於飢餓 Starvation'
- bmi > =15 且 bmi < 18.5,Memo顯示:'體重不足 Underweight'
- bmi >= 18.5 且 bmi < 24 ,Memo顯示:'一般體重 Normal'
- bmi >= 24 且 bmi < 30 ,Memo顯示:'超重 Overweight'
- bmi >= 30 且 bmi < 40 ,Memo顯示:'嚴重超重 Obese'
- bmi >= 40 ,Memo顯示:'極度超重 Morbidly Obese'
- 將String變數設定至Memo元件
- 完成! 請找老師登記
BP:
這算是將上學期學過的做一個基本整合,
請同學加油,務必成功做出來而且瞭解!
沒有留言:
張貼留言