Tandatangan:…………………........................ Tandatangan:……………….....................
Nama:……………………………………………. Nama:………………………....………........
Tarikh:…………………………………………… Tarikh:………………………………………
1
2
i. Pendahuluan
Projek ini dibina berdasarkan permasalahan yang timbul apabila
pelajar SMK KUDAT II ingin mengetahui nilai BMI(BODY MESS
INDEX) mereka.Saya diberi 4 bulan untuk menyiapkan projek
ini.Projek ini diberikan oleh Cg. Sabri pada bulan Mei dan akan di
hantar pada bulan Ogos ini.
3
CARA MENGIRA BMI DENGAN MUDAH:
BERAT
.........................................
KETINGGIAN X KETINGGIAN
4
ii. Carta Gantt
MINGG MEI JUN JULAI OGOS
M1 M2 M3 M4 M1 M2 M3 M4 M1 M2 M M4 M1 M2 M3 M
U 3
TAKLIMAT DARI
GURU
MENGENAI BMI
PENGIRAAN
BMI
TINGKATAN 1
PENGIRAAN
BMI
TINGKATAN 2
PENGIRAAN
BMI
TINGKATAN 3
PENGIRAAN
BMI
TINGKATAN 4
PENGIRAAN
BMI
TINGKATAN 5
PENGIRAAN
BMI
TINGKATAN 6
5
ULANGAN
SEMULA
MEMBUAT
LAPORAN
6
Pengiraan berat Dapatkan nilai
badan dan tinggi ketinggian dalam [ Cm]
1. Mula
2. Masukkan berat badan dan tinggi
3. Papar BMI
jika BMI kurang 18.5
4. Kurang berat badan
5. Jika BMI 18.5-24.9
6. Anda mempunyai berat badan yang
unggul
b) Bahagian kecil
i) Isytihar Pemboleh ubah dan pemalar
ii) Input
iii)Proses
iv)Output
7
Teknik pengecaman Corak yang dapat di camkan bagi bahagian ialah penggunaan jenis
corak data float
Isytihar Pemboleh Pemboleh ubah untuk menyimpan nilai
ubah dan pemalar
Input Pengguna masukkan satu nilai numerik
untuk berat[Kg] dan satu nilai numerik
bagi tinggi[Cm]
8
Output arahan = Label(screen2,text =
‘BMI andailah:
‘+srt[bmi]
+komen,font=[“Helvetica”,
16]]
FASA 4
Teknik Leraian Pengujian dan Penyahpepijatan
Masalah besar
Mengenal pasti dan membaiki ralat pada keseluruhan atur
cara
Bahagian kecil
i. Menguji Pengisytiharan Pemboleh
ubah dan pemalar
ii. Menguji kod input iii. Menguji
kod proses iv. Menguji kod
output
9
Teknik peniskalaan Menguji Pengisytiharan Semua pemboleh ubah di
Pemboleh ubah dan pemalar isytiharkan dengan betul dari
segi
a.Jenis data
b.Kesesuaian nama dan
nama dieja dengan betul
c.Diberikan nilai permulaan
FASA 5
TEKNIK LERAIAN (a) Masalah besar Menyediakan dokumentasi
(b) Bahagian-bahagian kecil (i) Dokumentasi dalaman
(ii) Dokumentasi luaran
• Dokumen pustaka
• Panduan pengguna
(a) Dokumentasi dalaman Maklumat penting tentang
atur
cara merupakan corak yang
telah
dicamkan. Komen tentang
tujuan
dan fungsi dilakukan oleh
setiap bahagian/barisan
kod arahan.
10
(b) Dokumentasi luaran Maklumat teknikal tentang
(Dokumen Pustaka) atur cara
untuk tujuan rujukan,
penyelenggaraan dan
penambahbaikan
(c) Dokumentasi luaran Maklumat tentang cara
(Panduan Pengguna) menggunakan
atau melaksanakan arahan
11
PSEUDOKOD
1. Mula
2. Masukkan berat badan dan tinggi
3. Papar BMI
jika BMI kurang 18.5
4. Kurang berat badan
5. Jika BMI 18.5-24.9
Anda mempunyai berat badan yang unggul
9. Jika BMI 25-30
10. Berlebihan berat badan
11. Jika BMI 30 atau lebih
12. Anda adalah obesiti
Tamat
Carta alir
12
13
14
V. Penghasilan Produk
Aplikasi:Python Aturcara
from tkinter import *
import tkinter
def kirabmi():
tinggi= float(inputtinggi.get())/100
berat= float(inputberat.get())
bmi=round((berat/(tinggi*tinggi)),2)
paparhasil(bmi)
def paparhasil(bmi):
global screen1
screen1.destroy()
screen2 = Tk()
screen2.resizable(width=False, height=False)
w = 800
h = 650
ws = screen2.winfo_screenwidth()
15
hs = screen2.winfo_screenheight()
x = (ws/2) - (w/2)
y = (hs/2) - (h/2)
screen2.geometry("800x600")
if bmi<18.5:
img1="imgkurang1.png"
img1="imgideal1.png"
img1="imgobes1.png"
else:
img1="imgobes1.png"
arahan.pack()
16
image1=PhotoImage(file=img1)
paparimg1=tkinter.Label(screen2,image=image1)
paparimg1.pack()
screen2.mainloop()
screen1 = Tk()
screen1.resizable(width=False, height=False)
w = 800
h = 650
ws = screen1.winfo_screenwidth()
hs = screen1.winfo_screenheight()
x = (ws/2) - (w/2)
y = (hs/2) - (h/2)
screen1.geometry("800x600")
photo=PhotoImage(file="banner.png")
headder=tkinter.Label(screen1,image=photo)
headder.pack()
status.pack(side=BOTTOM,fill=X)
17
arahan = Label(screen1, text='Sila Masukkan berat Anda\n')
arahan.pack()
lblberat.pack()
inputberat = Entry(screen1)
inputberat.pack()
inputberat.focus_set()
lbltinggi.pack()
inputtinggi = Entry(screen1)
inputtinggi.pack()
butangkira.pack()
enterbwh.pack()
tatacara=PhotoImage(file="img1.png")
tata=tkinter.Label(screen1,image=tatacara)
tata.pack()
18
screen1.mainloop()
kod aturcara
19
20
21
OUTPUT:
tatacara=PhotoImage(file="img1.png")
tata=tkinter.Label(screen1,image=tatacara)
tata.pack()
screen1.mainloop()
vii. Penutup
22
LAMPIRAN
Rujukan
Buku
Wan zaleha binti Wan Yusof, 2018. Asas Sains Komputer Tingkatan 3. Kuala Lumpur: Pen Asia
Publication Sdn. Bhd.
Internet
https://ms.wikipedia.org/wiki/kira.bmi
http://www.bmi.com.my/info-bmi/jenis-kategori -bmi/body- mess-index/
https://www.mysumber.com/jenis - bmi.com
23
Orang Sumber
24