The words you are searching are inside this book. To get more targeted content, please make full-text search by clicking here.
Discover the best professional documents and content resources in AnyFlip Document Base.
Search
Published by g-12028155, 2021-04-14 22:53:26

SK - 1.2 Algoritma

SK - 1.2 Algoritma

1.2 Algoritma

1.2.1 Menggunakan Algoritma untuk Menyatakan
Penyelesaian Kepada Masalah

1 Lukis bentuk segitiga untuk badan.
2 Lukis tiga biji mata.
3 Lukis 2 pasang kaki.
4 Lukis sayap.
5 Lukis gigi.

Algoritma Set arahan langkah demi langkah untuk
menyelesaikan sesuatu masalah/tugasan.

Apa-apa tugas pun boleh dijalankan
menggunakan algoritma, dengan syarat ada

arahan yang lengkap, jelas dan tersusun.

Memahami masalah sebelum membina algoritma.
Perkara-perkara yang perlu diketahui:

Input Proses Output

Bina analisis IPO untuk aturcara
yang menerima dua nombor dan
memaparkan hasil tambah
sebagai output.

Input nombor_1, nombor_2

Proses jumlah = nombor_1 + nombor_2

Output jumlah

Pseudokod Carta Alir

1. MULA MULA
2. INPUT nombor_1, nombor_2 INPUT nombor_1,
3. jumlah = nombor_1 + nombor_2
4. OUTPUT jumlah nombor_2
5. TAMAT
jumlah = nombor_1 + nombor_2

OUTPUT jumlah

TAMAT

Pseudokod

Langkah-langkah menulis pseudokod:

• Tulis kenyataan MULA
• Baca/terima INPUT
• PROSES data menggunakan logik/pengiraan
• Papar OUTPUT
• Tulis kenyataan TAMAT

1. MULA
2. INPUT nombor_1, nombor_2
3. jumlah = nombor_1 + nombor_2
4. OUTPUT jumlah
5. TAMAT

Tuliskan pseudokod untuk
aturcara yang menerima harga
barang dan peratus diskaun,
kemudian memaparkan harga
selepas diskaun.

1. MULA
2. INPUT harga_barang, peratus_diskaun
3. diskaun = harga_barang * peratus_diskaun / 100

harga_selepas_diskaun = harga_barang – diskaun
4. OUTPUT harga_selepas_diskaun
5. TAMAT

Carta Alir

Simbol-simbol dalam carta alir :

Terminal Mula / Tamat

Input / Output
Proses
Syarat (condition/decision)
Aliran aktiviti
Penghubung

Lukis carta alir untuk aturcara MULA
yang menerima harga barang
dan peratus diskaun, kemudian INPUT
memaparkan harga selepas harga_barang, diskaun
diskaun.

diskaun =
harga_barang * peratus_diskaun / 100

harga_selepas_diskaun =
harga_barang – diskaun

OUTPUT
harga_selepas_diskaun

TAMAT

INPUT BACA/READ

OUTPUT PAPAR/DISPLAY

1. MULA
2. DAPATKAN nombor_1, nombor_2
3. jumlah = nombor_1 + nombor_2
4. PAPAR jumlah
5. TAMAT

1. MULA
2. BACA harga_barang, peratus_diskaun
3. diskaun = harga_barang * peratus_diskaun / 100

harga_selepas_diskaun = harga_barang – diskaun
4. CETAK harga_selepas_diskaun
5. TAMAT

1.2.2 Struktur Kawalan dalam Pengaturcaraan

Urutan Pilihan

(Sequence) (Selection)

Struktur
Kawalan

Pengulangan

(Iteration/
Repetition/

Looping)

Melaksanakan arahan satu persatu mengikut urutan linear.

1 23 45

Pseudokod Carta Alir

1. MULA MULA
2. Penyataan 1
3. Penyataan 2 Penyataan 1
4. Penyataan 3 Penyataan 2
5. TAMAT Penyataan 3

TAMAT

Umpuk nilai 1. MULA
(declare value) 2. SET pi = 3.142
3. PAPAR “Masukkan jejari bulatan”
Memberi nilai awal 4. INPUT jejari
5. luas = pi * jejari * jejari

ukur_lilit = 2 * pi * jejari
6. OUTPUT luas, ukur_lilit
7. TAMAT

MULA Umpuk nilai
(declare value)
pi = 3.142
PAPAR “Masukkan jejari bulatan” Memberi nilai awal

INPUT jejari
luas = pi * jejari * jejari
ukur_lilit = 2 * pi * jejari
OUTPUT luas, ukur_lilit

TAMAT

1 masa_mula, masa_tamat, upah_sejam,
perkeso
2 Input
1. jumlah_jam_bekerja = masa_tamat –
Proses masa_mula

2. gaji_kasar = jumlah_jam_bekerja * upah_sejam
3. gaji_bersih = gaji_kasar - perkeso

Output gaji_kasar, gaji_bersih

2

1. MULA
2. PAPAR “Masukkan masa mula bekerja”
3. PAPAR “Masukkan masa tamat bekerja”
4. PAPAR “Masukkan masa upah sejam”
5. PAPAR “Masukkan masa potongan PERKESO”
6. INPUT masa_mula, masa_tamat, upah_sejam, perkeso
7. jumlah_jam_bekerja = masa_tamat – masa_mula

gaji_kasar = jumlah_jam_bekerja * upah_sejam
gaji_bersih = gaji_kasar - perkeso
8. OUTPUT gaji_kasar, gaji_bersih
9. TAMAT

2

MULA

PAPAR “Masukkan masa mula bekerja”

PAPAR “Masukkan masa tamat bekerja”

PAPAR “Masukkan upah sejam”

PAPAR “Masukkan potongan PERKESO”

INPUT masa_mula, masa_tamat,
upah_sejam, perkeso

A

A

jumlah_jam_bekerja = masa_tamat – masa_mula
gaji_kasar = jumlah_jam_bekerja * upah_sejam
gaji_bersih = gaji_kasar - perkeso

OUTPUT gaji kasar, gaji bersih

TAMAT

Melaksanakan arahan mengikut syarat/pilihan yang telah ditentukan.

Jika tiket VIP Jika tiket biasa

Beratur disini Beratur disini
(Lane 1) (Lane 2)

Pseudokod Carta Alir

1. MULA MULA
2. Penyataan 1
3. IF (syarat 1) benar THEN Penyataan 1 Penyataan 3

Penyataan 2 Syarat False
ELSE 1
Penyataan 3 True
END IF
4. TAMAT Penyataan 2

TAMAT

Umpuk nilai 1. MULA
(declare value) 2. SET password = 12345
3. PAPAR “Masukkan kata laluan anda”
Memberi nilai awal 4. INPUT kata_laluan
5. IF (kata_laluan == password) THEN

OUTPUT “Login anda berjaya”
ELSE
OUTPUT “Login anda gagal”
6. TAMAT

MULA Umpuk nilai
(declare value)
password = 12345
PAPAR “Masukkan kata laluan anda” Memberi nilai awal

INPUT kata_laluan

kata_laluan False
==
OUTPUT “Login anda gagal”
password
TAMAT
True

OUTPUT “Login anda berjaya”

1. MULA
2. SET min_tinggi = 160
3. PAPAR “Masukkan tinggi anda”
4. INPUT tinggi
5. IF (tinggi >= min_tinggi) THEN

OUTPUT “Anda layak menjadi pramugari”
ELSE
OUTPUT “Anda tidak mencapai had tinggi
minimum untuk menjadi pramugari”
END IF
6. TAMAT

MULA

min_tinggi = 160
PAPAR “Masukkan tinggi anda”

INPUT tinggi

tinggi False OUTPUT
>=
160 “Anda tidak mencapai had tinggi

minimum untuk menjadi pramugari”

True

OUTPUT “Anda layak menjadi TAMAT
pramugari”

1. MULA
2. PAPAR nombor
3. IF nombor %2 == 0 THEN

TULIS “E”
ELSE
TULIS “A”
END IF
6. TAMAT

Melaksanakan arahan secara berulang-ulang sehingga syarat
tertentu dipenuhi.

Ulang pusingan selagi
belum cukup 30 pusingan.

30/30 = Tamat perlumbaan

Pseudokod Carta Alir

1. MULA MULA
2. Penyataan 1
3. WHILE (syarat 1) benar Penyataan 1

Penyataan 2 Syarat True Penyataan 2
END WHILE 1
4. TAMAT
False

TAMAT

MULA

timer = 0

timer = timer + 1

timer < True
60
OUTPUT “Teruskan permainan”

False TAMAT

OUTPUT “Permainan Tamat”

1. MULA
2. SET timer = 0
3. WHILE (timer < 60)

OUTPUT “Permainan diteruskan”
timer = timer + 1
END WHILE
6. OUTPUT “Permainan tamat”
7. TAMAT

1. MULA
2. SET count = 0

SET total = 0
3. PAPAR “Masukkan nombor”
4. INPUT nombor
5. WHILE (count < 5)

jumlah = total + nombor
count = count + 1
Ulang langkah 3
END WHILE
6. OUTPUT jumlah
7. TAMAT

MULA

count = 0,
total = 0

PAPAR “Masukkan nombor”

INPUT nombor

count < 5 True jumlah = total + nombor
count = count + 1
False
TAMAT
OUTPUT jumlah

1.2.3 Menguji dan Membaiki Ralat dalam
Algoritma

Kenapa Untuk tujuan pembaikan.
perlu uji Untuk memastikan logik algoritma adalah betul.
Supaya pengaturcaraan lebih efisien.
dan
baiki? Sebelum menulis aturcara (programming)
komputer.
Bila ?

Mudah M(bterSpeamendenkknmntieesotuayneplmakaneruestjglpahereaeltumi)luusuatsdanareaheciantrhamualnakrumaa Lengkap
difahami Efisien
Ciri-ciri
algoritma
yang telah

diuji

Memenuhi AlMgeonrictmapaabi ekrfituenrigasi
kriteria dengreaknapbaennttauskdan
tidpaekrismiaenn/gpgrougnraakman

baynanyagkdmiinegminoiri

1

harga_dsisekleapuans=_dhiasrkgaau_nb=arhaanrgg*a_paesratlu–s(_hdairsgkaa_uans/a1l 0* 0peratus_diskaun)
harga_selepas_diskaun = harga_barang – diskaun

2

PlIONuAUPSOlIaPPIlONuNuPAsETAUUaUPaAPPTPsP=TsTTUURAUAPp=PTp=jTRURTei“Uipj3=jMTe*“Tlaei“.uj1M3j*rMajlalaeau4i.usrja1rajse2aiaauis4sjss*aruk2uirkkjkei*kak*jjaanaejnrenjijajej*ajreejriajjjeiaarjriraiibrbbiuuullalaattataannn”””

3

MULA

PPaappaarr““MMaassuukkkkaann nnaammaa””
INPUT nama

OUTPUT “Hello ” + nama

TAMAT

4

password = 12345, count = 0
INPUT kata_laluan

kata_laluan != password True count = count + 1
AND
TAMAT
count <= 3

False

OUTPUT “Login berjaya”

4

password = 12345, count = 0
INPUT kata_laluan

OUTPUT “Login False kata_laluan
berjaya” !=

TAMAT password

True True count = count + 1

count
<= 3

False

OUTPUT “Login gagal”

Dikenali sebagai desk-checking
1
2
3
4

1. MULA
2. INPUT harga_barang, peratus_diskaun
3. harga_selepas_diskaun = harga_barang – (harga_barang * peratus_diskaun)
4. OUTPUT harga_selepas_diskaun
5. TAMAT

1

Input Diuji Output Dijangka
harga_selepas_diskaun = 135
harga_barang = 150
peratus_diskaun = 10

2

Baris harga_ peratus_ harga_selepas_ I/O
barang diskaun diskaun
- -
1. - - harga_barang ? 150
- peratus_diskaun ? 10
2. 150 10
150 – (150 * 10) = -1350 -
3. - - harga_selepas_diskaun = -1350
4. - -
5. - - - -
-

3

Bil Input Diuji Output Dijangka Output Diperolehi
Uji
(harga_selepas_ diskaun) (harga_selepas_ diskaun )

1. harga_barang = 150 135 -1350
peratus_diskaun = 10 120 -2850
180 -1800
2. harga_barang = 150
peratus_diskaun = 20

3. harga_barang = 200
peratus_diskaun = 10

4

1. MULA
2. INPUT harga_barang, peratus_diskaun
3. harga_selepas_diskaun = harga_barang – (harga_barang * peratus_diskaun)
4. OUTPUT harga_selepas_diskaun
5. TAMAT

Dimanakah ralat? Pembetulan?

1. MULA
2. INPUT harga_barang, peratus_diskaun
3. diskaun = harga_barang * peratus_diskaun / 100

harga_selepas_diskaun = harga_barang – diskaun
4. harga_selepas_diskaun = harga_barang – (harga_barang * peratus_diskaun)
5. OUTPUT harga_selepas_diskaun
6. TAMAT

1. MULA
2. INPUT markah
3. IF (markah >= 50) THEN

OUTPUT “Lulus”
ELSE
OUTPUT “Gagal”
END IF
4. TAMAT

1 Input Diuji Output Dijangka
lulus
markah = 55

2 Baris markah syarat I/O
- -
1. - -
2. 55 markah ? 55
3. - 55 >= 50 ? True Lulus
4. - - -


Click to View FlipBook Version