Translate

2010年3月8日 星期一

中台 - 98-2 物件導向程式設計 03/09練習

BMI Caculator 

請同學製作出一個 BMI值計算程式,版面與操作過程如範例,
範例下載:[ Download ]


製作流程與提示項目

○新增專案
○設定Form底色
○設定Form的Events中的OnActive事件 (此為讀取該form時自動引發)
○撰寫歡迎程序
  1. ShowMessage() 顯示歡迎頁面
  2. InputBox) 輸入使用者名稱 (利用一個全域變數儲存)
  3. MessageBox() 確認使用者名稱( 請使用PChar()函式進行名稱確認))
    1. 若正確,即進入頁面 
    2. 若錯誤,回到InputBox重新輸入 
    3.  (使用While進行迴圈確認)
○製作版面項目
  1. 設定標題Label並編輯內容
  2. 設定Edit 以輸入身高體重
  3. 製作Button做為分析與結束使用
  4. 設定一個GroupBox元件做為輸出
    1. 製作Label並設定標題內容,label有以下幾個:
      • 打招呼標題 
      • BMI值顯示
      •  (預設一開始看不見 Visible = false )
    2.  製作一個Memo元件做為結果判斷使用 (預設一開始看不見 Visible = false )
    ○撰寫結束Button程式 (使用close()函式)
    ○撰寫分析Button程式
      1. 建立全域變數 : 
        1. result : String;
        2. bmi : Real;
      2. 判斷兩個Edit元件是否有輸入值 (使用IF ELSE 判斷式)
        1. 若無,便以showmessage()告知
        2. 若有,便繼續
      3. 取得兩個Edit元件中的值並將文字型態轉為Float型態(StrToFloat() )
      4. 計算BMI值,公式如下: 
        • BMI = 體重 (KG) / 身高 (M^2)
        • Hints:
          • M為公尺,故輸入為公分必須先除以100
          • 平方請用 sqr() 函式
      5. 打開GroupBox中的Label招呼元件,並顯示出使用者名稱招呼 ( 要加上username)
      6. 打開BMI顯示Label,並顯示BMI值 (需將Float轉回Str才能輸出)
      7. 打開招呼Label與Memo
      8. 依據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'
      9. 將String變數設定至Memo元件
      10. 完成!  請找老師登記


        BP:
        這算是將上學期學過的做一個基本整合,
        請同學加油,務必成功做出來而且瞭解!



        沒有留言: