Page 234 - Buku Teks ASK Tingkatan 3 (KSSM)
P. 234
(b) Pseudokod: 3. Aplikasi ini akan mencari nombor gandaan
positif (tidak termasuk sifar) daripada satu
1 Mula senarai nombor yang dimasukkan oleh
2 Setkan senarai = [30, 22, 33, pengguna. Setelah mencari semua nombor
55, 42] gandaan positif yang terdapat dalam senarai,
3 Isytihar pemboleh ubah i, j, aplikasi akan memaparkan senarai nombor
n, temp gandaan positif tersebut. Jika tiada nombor
4 Setkan n = 5 gandaan positif dalam senarai, aplikasi akan
5 Setkan i = 0 tamat.
6 Setkan temp = 0 Pengguna perlu memasukkan:
7 for i < n – 1 • Bilangan item dalam senarai
7.1 Setkan j = 0 • Item-item dalam senarai
7.2 for j < n – i – 1 • Nombor yang hendak digandakan
7.2.1 Jika L > L j + 1
j
7.2.1.1 temp = L j Algoritma:
7.2.1.2 L = L j + 1
j
7.2.1.3 L j + 1 = temp 1. Isytihar dua senarai, senarai[]
7.2.2 Tamat jika dan senaraiBaharu[]
7.2.3 Kira j = j + 1 2. Isytihar pemboleh ubah i, j,
7.3 Kira i = i + 1 noGanda
8 Papar senarai 3. Setkan i = 0
9 Tamat 4. Pengguna taipkan satu set nombor
positif untuk dimasukkan ke
2. Pseudokod: dalam senarai[]
5. Pengguna taipkan satu nilai
1 Mula sebagai nombor yang hendak
2 Setkan senarai = [3, 4, 7, 10, digandakan
15, 24, 36, 72, 90] 6. Setkan noGanda = nombor yang
3 Isytihar pemboleh ubah i, j, m, K hendak digandakan
4 Setkan n = 10 7. Setkan n = bilangan item dalam
5 Setkan i = 0 senarai
6 Setkan j = 9 8. Semak item pertama dalam
7 Masukkan satu item carian K senarai[]
8 while i < j 9. Jika item dalam senarai boleh
8.1 Setkan m = (i + j)/2 dibahagi dengan noGanda tanpa
8.2 Jika K == L m baki
8.2.1 Papar “Item ada dalam Masukkan item dalam
senarai” senaraiBaharu[ ]
8.2.2 Keluar gelung 10. Jika masih ada item lain dalam
8.3 Jika tidak senarai[]
8.3.1 Jika K < L m Semak item yang berikut
8.3.1.1 Kira j = m – 1 Ulang langkah 6
8.3.2 Jika tidak 11. Jika senaraiBaharu[] == kosong
8.3.2.1 Kira i = m + 1 Papar “Tiada nombor gandaan”
8.3.3 Tamat jika Jika lain
8.4 Tamat jika Papar senaraiBaharu[]
9 Tamat 12. Tamat
224

