RANCANGAN PENGAJARAN 6B
MASA CADANGAN AKTIVITI BBM PEMETAAN
6. Contoh adalah sebahagian daripada algoritma program 248SAINS KOMPUTER • TINGKATAN 4
Pusat Sumber Sekolah kita.
Mula urusanBuku()
paparanMenu() Pilihan
Pengguna
Pilihan
Pengguna
Apakah pilihan 1 1 Apakah pilihan
pengguna? rekodBuku() 2 pengguna?
Tamat 2 pinjamBuku()
urusanBuku() pulangBuku()
3 return()
maklumatStudent()
Rajah 6.5
7. Perhatikan bahawa di gelung pilihan menu, setiap satu 6B • MODUL ATUR CARA DENGAN JENIS DATA PRIMITIF
pilihan sekarang diwakili oleh simbol subatur cara.
Ini membolehkan kita untuk menjelaskan dengan lebih teliti
function setiap subatur cara. Pada akhir setiap subatur cara,
untuk kembalikan aliran kawalan ke atur cara utama, kita
perlu gantikan simbol akhir dengan simbol return pada
akhir subatur cara. Dalam atur cara utama, program kita
akan tamat pilihan pengguna tidak merangkumi nombor
pilihan pada subatur cara.
8. Guru mengulas semula tentang kebaikan menulis atur
cara bermodul kita akan menjadi terlalu rumit untuk kita
menyahralat dan terlalu sukar untuk menuliskan atur cara
tersebut.
9. Murid diberikan masa 15 minit untuk melengkapkan
Lembaran Kerja 6B-3 soalan 1 – 3. ALG
10. Guru menerangkan bahawa langkah seterusnya adalah
untuk menulis atur cara untuk setiap subatur cara.
11. Guru menerangkan semula sintaks untuk mentakrifkan satu
subatur cara yang baru:
RANCANGAN PENGAJARAN 6B
MASA CADANGAN AKTIVITI BBM PEMETAAN
12. Guru memberi contoh cara mentakrifkan sesuatu subatur SAINS KOMPUTER • TINGKATAN 4
cara:
Subatur Atur cara
Paparan menu public static void paparanMenu()
Tambah buku public static void tambahBuku(int x)
13. Guru juga mengulas contoh atur cara yang mengandungi
subatur cara dan membimbing murid untuk mengesan
aliran kawalan atur cara dan juga penghantaran/
penerimaan pemboleh ubah antara subatur cara pada ]
Rajah 6.4.
249
Rajah 6.6 6B • MODUL ATUR CARA DENGAN JENIS DATA PRIMITIF
14. Guru memperkenalkan function matematik yang mungkin
diperlukan seperti:
a. Pemalar Math.PI
b. Math.pow(a,b)
c. Math.sqrt(a)
d. Math.round(a)
RANCANGAN PENGAJARAN 6B
MASA CADANGAN AKTIVITI BBM PEMETAAN
15. Guru membimbing murid dalam menghasilkan subatur cara • Lembaran SAINS KOMPUTER • TINGKATAN 4
salah satu isipadu bongkah dahulu. Guru mengingatkan Kerja
murid tentang konsep incremental development iaitu 6B-3
membina program sedikit demi sedikit.
a. Murid memilih sekurang-kurangnya 2 isipadu bongkah
dalam Lembaran Kerja 6B-3.
16. Guru mengingatkan murid untuk saling menyemak hasil
kerja rakan setelah selesai menulis atur cara.
5 Minit Penutup:
1. Guru memilih beberapa murid untuk menunjukkan carta alir
mereka di hadapan kelas.
2. Murid merumuskan penulisan atur cara dengan amalan
yang baik untuk tunjukkan atur cara di hadapan kelas.
250
6B • MODUL ATUR CARA DENGAN JENIS DATA PRIMITIF
LAMPIRAN 6B-1: CARTA SAINS KOMPUTER • TINGKATAN 4
Murid merujuk kepada carta ini dalam pembelajaran pembinaan
subatur cara.
Pusat Sumber Sekolah
Paparan Rekod buku Urusan buku Maklumat murid
menu
Pinjaman buku Pemulangan Semak
buku kewujudan
Tambah Perlupusan
buku buku murid
Semak Kemaskini Kemaskini Kemaskini 251
kewujudan status status status
buku
buku peminjaman peminjaman
dan dan
Tambahkan
buku pemulangan pemulangan
murid murid
Semak Semak Semak Kemaskini Kemaskini 6B • MODUL ATUR CARA DENGAN JENIS DATA PRIMITIF
kewujudan kewujudan kewujudan status status buku
buku buku murid peminjaman
dan
pemulangan
murid
Lupuskan
buku
Standard
Pembelajaran:
1.6.2, 1.6.3
LEMBARAN KERJA 6B-1
NAMA: TARIKH:
KELAS:
Murid perlu membuat rancangan carta alir sebelum menuliskan atur cara. SAINS KOMPUTER • TINGKATAN 4
1. Atur cara untuk sebuah kalkulator. Pastikan setiap case pilihan hanya mengandungi function.
a. Pengguna masukkan dua nombor x dan y.
b. Tukarkan atur cara pada lembaran kerja 4.1C dengan menghasilkan subatur cara untuk pengiraan
berikut:
i. Menambah dua nombor tersebut
ii. Menolak dua nombor tersebut
iii. Mendarab dua nombor tersebut
iv. Menguasakan dua nombor tersebut
c. Output adalah berdasarkan pilihan pengguna.
Carta Alir
252
6B • MODUL ATUR CARA DENGAN JENIS DATA PRIMITIF
Standard
Pembelajaran:
1.6.2, 1.6.3
LEMBARAN KERJA 6B-1
Atur Cara
SAINS KOMPUTER • TINGKATAN 4
253
Komen guru: 6B • MODUL ATUR CARA DENGAN JENIS DATA PRIMITIF
Tarikh:
Standard
Pembelajaran:
1.6.2, 1.6.3
LEMBARAN KERJA 6B-2
NAMA: TARIKH: SAINS KOMPUTER • TINGKATAN 4
KELAS:
2. Carta alir ini mengandungi tiga subatur cara, iaitu:
i. sayHello – tiada input. Memaparkan “Hello World” kepada pengguna.
ii. plusOne – mengambil input 1 nombor x, menambahkan 1 kepada x, memulangkan nilai baru
x kepada atur cara utama.
b. sumOfSquare– mengambil input 2 nombor, x dan y, memulangkan keputusan x2+y2 kepada atur cara
utama.
Hasilkan subatur cara bagi setiap carta alir yang diberi.
Carta Alir
Mula sayHello() plusOne(x)
“Hello World”
sayHello() Mengisytiharkan satu pemboleh
Minta 1 nilai daripada Return ubah baru result
pengguna, x result = x + 1
X = plusOne(x) Return result
Mengisytiharkan satu pemboleh ubah baru sumOfSquare(x,y) 254
result Mengisytiharkan satu pemboleh
6B • MODUL ATUR CARA DENGAN JENIS DATA PRIMITIF
Minta 1 nilai daripada ubah baru result
pengguna, y
result = (x* x) + (y *y)
result = sumOfSquare(x,y)
Return result
Paparkan nilai result
Tamat
Standard
Pembelajaran:
1.6.2, 1.6.3
LEMBARAN KERJA 6B-2
Atur Cara
SAINS KOMPUTER • TINGKATAN 4
255
Komen guru: 6B • MODUL ATUR CARA DENGAN JENIS DATA PRIMITIF
Tarikh:
LEMBARAN KERJA 6B-3 Standard
Pembelajaran:
1.1.2, 1.3.6,
1.6.2, 1.6.3
NAMA: TARIKH:
KELAS:
Murid merancang algoritma dengan soalan bimbingan. SAINS KOMPUTER • TINGKATAN 4
Hasilkan satu kalkulator yang boleh mengirakan isipadu bongkah. Formula isipadu bongkah-bongkah adalah
seperti berikut:
Persamaan Perbezaan
Isipadu = a 3
Isipadu = π r2 h
Isipadu = lwh
Isipadu = 4 π r2 h
3
256
Isipadu = 1 π r2 h
3
Isipadu = 1 (luas Base) h 6B • MODUL ATUR CARA DENGAN JENIS DATA PRIMITIF
3
Hasilkan sebuah kalkulator isipadu yang boleh mengirakan isipadu untuk 2 bongkah geometri. Kalkulator akan
tamat apabila pengguna memasuki -1 untuk pilihan operasi.
Atur cara anda mestilah ditulis secara bermodular. Gunakan soalan yang diberikan untuk membantu anda
merancang algoritma.
LEMBARAN KERJA 6B-3 Standard
Pembelajaran:
1.1.2, 1.3.6,
1.6.2, 1.6.3
Standard Prestasi:
1.1-3, 1.3-3,
1.3-4,1.6-3
1) Berikut adalah contoh pemecahan masalah untuk pembinaan sistem pusat sumber sekolah. Dengan
merujuk kepada contoh di bawah, pecahkan masalah pembinaan kalkulator ke bahagian kecil.
Pusat Sumber Sekolah
Paparan menu Rekod buku Urusan buku Maklumat murid SAINS KOMPUTER • TINGKATAN 4
Tambah Perlupusan Pinjaman buku Pemulangan Semak Kemaskini
buku buku buku kewujudan status
murid peminjaman
dan
pemulangan
murid
Semak Tambahkan Semak Lupuskan Semak Semak Kemaskini Kemaskini Kemaskini Kemaskini
kewujudan buku kewujudan buku kewujudan kewujudan status buku status status status buku
buku buku buku murid peminjaman peminjaman
dan dan
pemulangan pemulangan
murid murid
257
6B • MODUL ATUR CARA DENGAN JENIS DATA PRIMITIF
LEMBARAN KERJA 6B-3 Standard
Pembelajaran:
1.1.2, 1.3.6,
1.6.2, 1.6.3
Standard Prestasi:
1.1-3, 1.3-3,
1.3-4, 1.6-3
2) Dalam ruang berikut, lakarkan ataupun catatkan function yang mungkin anda perlukan dalam
atur cara anda.
SAINS KOMPUTER • TINGKATAN 4
258
6B • MODUL ATUR CARA DENGAN JENIS DATA PRIMITIF
Standard
Pembelajaran:
1.1.2, 1.3.6,
1.6.2, 1.6.3
LEMBARAN KERJA 6B-3
3) Berikut adalah contoh carta alir bagi sebuah sistem rekod disiplin. Dengan merujuk carta alir di bawah,
hasilkan carta alir anda bagi kalkulator. Algoritma anda mestilah bermodular. Ertinya, pilihan pengguna
pada menu pilihan seharusnya memanggil ke function lain dan bukan melakukan pengiraan.
Mula urusanBuku() SAINS KOMPUTER • TINGKATAN 4
paparanMenu() Pilihan
Pengguna
Pilihan
Pengguna
Apakah pilihan Tamat Apakah pilihan
pengguna? pengguna?
1 1
rekodBuku() pinjamBuku()
2 2
urusanBuku() pulangBuku()
3 return()
maklumatStudent()
259
6B • MODUL ATUR CARA DENGAN JENIS DATA PRIMITIF
Standard
Pembelajaran:
1.1.2, 1.3.6,
1.6.2, 1.6.3
LEMBARAN KERJA 6B-3
SAINS KOMPUTER • TINGKATAN 4
260
6B • MODUL ATUR CARA DENGAN JENIS DATA PRIMITIF
LEMBARAN KERJA 6B-3 Standard
Pembelajaran:
4) Hasilkan atur cara anda di ruangan yang disediakan.
1.1.2, 1.3.6,
1.6.2, 1.6.3
SAINS KOMPUTER • TINGKATAN 4
2616B • MODUL ATUR CARA DENGAN JENIS DATA PRIMITIF
Komen guru:
Tarikh:
SKEMA JAWAPAN
LEMBARAN KERJA 6B-1
Murid perlu membuat rancangan carta alir sebelum menuliskan atur cara. SAINS KOMPUTER • TINGKATAN 4
1. Atur cara untuk sebuah kalkulator. Pastikan setiap case pilihan hanya mengandungi function.
a. Pengguna masukkan dua nombor x dan y.
b. Tukarkan atur cara pada lembaran kerja 4.1C dengan menghasilkan subatur cara untuk pengiraan
berikut:
i. Menambah dua nombor tersebut
ii. Menolak dua nombor tersebut.
iii. Mendarab dua nombor tersebut.
iv. Menguasakan dua nombor tersebut.
c. Output adalah berdasarkan pilihan pengguna.
Carta Alir
Mula tambah(x,y) tolak(x,y)
2 nombor: x, y Isytiharkan pemboleh Isytiharkan pemboleh 262
ubah Jawapan untuk ubah Jawapan untuk
1 nombor: simpan nilai jawapan simpan nilai jawapan
pilihan
Jawapan = x+y Jawapan = x-y
Isytiharkan pemboleh ubah Jawapan untuk simpan
nilai jawapan Return Jawapan Return Jawapan
Apakah pilihan darab(x,y) kuasa(x,y) 6B • MODUL ATUR CARA DENGAN JENIS DATA PRIMITIF
murid?
Isytiharkan pemboleh Isytiharkan pemboleh
1 ubah Jawapan untuk ubah Jawapan untuk
simpan nilai jawapan simpan nilai jawapan
Jawapan = tambah(x,y)
Jawapan = x*y Jawapan = pow(xy)
2
Jawapan = tolak(x,y) Return Jawapan Return Jawapan
3
Jawapan = darab(x,y)
4
Jawapan = kuasa(x,y)
Paparkan
Jawapan
Tamat
SKEMA JAWAPAN
LEMBARAN KERJA 6B-1
Atur Cara
import java.util.Scanner; SAINS KOMPUTER • TINGKATAN 4
import java.lang.Math;
class Main 263
{
6B • MODUL ATUR CARA DENGAN JENIS DATA PRIMITIF
public static void main(String[] args)
{
Scanner in = new Scanner(System.in);
int x,y;
System.out.println("What is x?");
x = in.nextInt();
System.out.println("What is y?");
y = in.nextInt();
System.out.println("1 - X plus Y");
System.out.println("2 - X minus Y");
System.out.println("3 - X times Y");
System.out.println("4 - Raise x to the power of y");
System.out.println("What is your choice?");
int choice = in.nextInt();
int answer = 0;
switch(choice)
{
case 1:
answer = add(x,y);
break;
case 2:
answer = minus(x,y);
break;
case 3:
answer = multiply(x,y);
break;
case 4:
answer = power(x,y);
break;
}
System.out.println("The answer is "+answer);
}
public static int add(int x, int y)
{
int answer = x+y;
return answer;
}
public static int minus(int x, int y)
{
int answer = x-y;
return answer;
}
public static int multiply(int x, int y)
{
int answer = x*y;
return answer;
}
public static int power(int x, int y){
int answer = (int) Math.pow(x,y);
return answer;
}
}!
SKEMA JAWAPAN
LEMBARAN KERJA 6B-2
2. Carta alir ini mengandungi tiga subatur cara, iaitu: SAINS KOMPUTER • TINGKATAN 4
i. sayHello – tiada input. Memaparkan “Hello World” kepada pengguna.
ii. plusOne – mengambil input 1 nombor x, menambahkan 1 kepada x, memulangkan nilai baru
x kepada atur cara utama.
b. sumOfSquare– mengambil input 2 nombor, x dan y, memulangkan keputusan x2+y2 kepada atur cara
utama.
Hasilkan subatur cara bagi setiap carta alir yang diberi.
Carta Alir
Mula sayHello() plusOne(x)
“Hello World”
sayHello() Mengisytiharkan satu pemboleh
Return ubah baru result
Minta 1 nilai daripada
pengguna, x result = x + 1
X = plusOne(x) Return result
Mengisytiharkan satu pemboleh ubah baru sumOfSquare(x,y) 264
result Mengisytiharkan satu pemboleh
Minta 1 nilai daripada ubah baru result
pengguna, y
result = (x* x) + (y *y)
result = sumOfSquare(x,y)
Return result
Paparkan nilai result 6B • MODUL ATUR CARA DENGAN JENIS DATA PRIMITIF
Tamat
SKEMA JAWAPAN SAINS KOMPUTER • TINGKATAN 4
LEMBARAN KERJA 6B-2
265
Atur Cara
6B • MODUL ATUR CARA DENGAN JENIS DATA PRIMITIF
import java.util.Scanner;
class Main
{
public static void main(String[] args)
{
Scanner in = new Scanner(System.in);
sayHello();
System.out.println("Give me x");
int x = in.nextInt();
x = plusOne(x);
System.out.println("Give me y");
int y = in.nextInt();
int result = sumOfSquare(x,y);
System.out.println("Result is "+ result);
}
public static void sayHello()
{
System.out.println("Hello World");
}
public static int plusOne(int x)
{
int result = x+1;
return result;
}
public static int sumOfSquare(int x, int y)
{
int result = (x*x) + (y*y);
return result;
}
}!
SKEMA JAWAPAN
LEMBARAN KERJA 6B-3
Murid merancang algoritma dengan soalan bimbingan. SAINS KOMPUTER • TINGKATAN 4
Hasilkan satu kalkulator yang boleh mengirakan isipadu bongkah. Formula isipadu bongkah-bongkah adalah
seperti berikut:
Persamaan Perbezaan
Isipadu = a 3
Isipadu = π r2 h
Isipadu = lwh 266
Isipadu = 4/3 π r2 h
Isipadu = 1/3 π r2 h 6B • MODUL ATUR CARA DENGAN JENIS DATA PRIMITIF
Isipadu = 1/3 (luas Base) h
Hasilkan sebuah kalkulator isipadu yang boleh mengirakan isipadu untuk 2 bongkah geometri. Kalkulator akan
tamat apabila pengguna memasuki -1 untuk pilihan operasi.
Atur cara anda mestilah ditulis secara bermodular. Gunakan soalan yang diberikan untuk membantu anda
merancang algoritma.
SKEMA JAWAPAN SAINS KOMPUTER • TINGKATAN 4
LEMBARAN KERJA 6B-3
1) Berikut adalah contoh pemecahan masalah untuk pembinaan sistem pusat sumber sekolah. Dengan
merujuk kepada contoh di bawah, pecahkan masalah pembinaan kalkulator ke bahagian kecil.
Pusat Sumber Sekolah
Paparan menu Rekod buku Urusan buku Maklumat murid
Tambah Perlupusan Pinjaman buku Pemulangan Semak Kemaskini
buku buku buku kewujudan status
murid peminjaman
dan
pemulangan
murid
Semak Tambahkan Semak Lupuskan Semak Semak Kemaskini Kemaskini Kemaskini Kemaskini
kewujudan buku kewujudan buku kewujudan kewujudan status buku status status status buku
buku buku buku murid peminjaman peminjaman
dan dan
pemulangan pemulangan
murid murid
267
6B • MODUL ATUR CARA DENGAN JENIS DATA PRIMITIF
SKEMA JAWAPAN SAINS KOMPUTER • TINGKATAN 4
LEMBARAN KERJA 6B-3
2) Dalam ruang berikut, lakarkan ataupun catatkan function yang mungkin anda perlukan
dalam atur cara anda.
• Function untuk paparkan menu
o Input dari papan kekunci
o Pilihan akan mengalihkan kawalan program
kepada function yang berkenaan
• Function untuk kirakan isipadu sfera
o Memerlukan function untuk mengira kuasa nombor
• Function untuk kirakan isipadu kon
o Memerlukan function untuk mengira kuasa nombor
• Function untuk kirakan kuasa nombor
o Import dari math.pow
268
6B • MODUL ATUR CARA DENGAN JENIS DATA PRIMITIF
SKEMA JAWAPAN
LEMBARAN KERJA 6B-3
3) Berikut adalah contoh carta alir bagi sebuah sistem rekod disiplin. Dengan merujuk carta alir di bawah,
hasilkan carta alir anda bagi kalkulator. Algoritma anda mestilah bermodular. Ertinya, pilihan pengguna
pada menu pilihan seharusnya memanggil ke function lain dan bukan melakukan pengiraan.
MulMaula urusuarnuBsuaknu(B)uku() SAINS KOMPUTER • TINGKATAN 4
pappaarapnaMraenMnue(n)u()
PePnilgiPhgeaPunninlgiahgaunna
Pilihan
PiPliheangnguna Apakah pilihan
Pengguna peAnpggauknaah?pilihan
pengguna?
1 Apakah pilihan Tamat
1 Apakpaehnpgiglihuanan? 1
Tamat pinjamBuku()
2 pengguna?
2 1
rekodBuku() 2 pinjamBuku()
3 rekodBuku()
pulangBuku()
3 urusanBuku() 2
urusanBuku() pulangBuku()
maklumatStudent()
return()
maklumatStudent()
return()
269
Mula -1 displayMenu() sphereVolume() 6B • MODUL ATUR CARA DENGAN JENIS DATA PRIMITIF
displayMenu() Tamat
Paparkan menu Dapatkan
Pilihan Paparkan nilai r
Pengguna jawapan return
pow(r,3)
Apakah pilihan coneVolume()
pengguna? Dapatkan Kirakan isipadu dan
nilai r dan h simpan dalam answer
1 pow(r,2)
sphereVolume Return answer
Kirakan isipadu dan
2 simpan dalam answer pow(x, y)
coneVolume
Return answer
SKEMA JAWAPAN SAINS KOMPUTER • TINGKATAN 4
LEMBARAN KERJA 6B-3 270
4) Hasilkan atur cara anda di ruangan yang disediakan. 6B • MODUL ATUR CARA DENGAN JENIS DATA PRIMITIF
import java.util.Scanner;
import java.lang.Math;
class Main {
public static void main(String[] args) {
int choice;
double answer;
Scanner in = new Scanner(System.in);
//Loop for the menu
do{
displayMenu();
choice = in.nextInt();
switch(choice){
case 1:
answer = sphereVolume();
System.out.println(answer);
break;
case 2:
answer = coneVolume();
System.out.println(answer);
break;
case -1:
System.out.println("Good bye");
break;
default:
System.out.println("Wrong option. Try again!");
}
}while(choice!=-1);
}
//Display menu
public static void displayMenu(){
System.out.println("What do you want to do today?");
System.out.println("1 - Volume of a sphere");
System.out.println("2 - Volume of a cone");
System.out.println("-1 - Quit");
}
//Calculate volume for a sphere
public static double sphereVolume(){
System.out.println("What is the r?");
Scanner in = new Scanner(System.in);
int r = in.nextInt();
//Don't forget to use 4.0/3.0 to make sure that the answer of 4.0/3.0 is
1.3333, not 1 (integer operation)
double answer = (4.0/3.0) * Math.PI * Math.pow(r,3);
return answer;
}
//Calculate the volume of a cone
public static double coneVolume(){
Scanner in = new Scanner(System.in);
System.out.println("What is the r?");
int r = in.nextInt();
System.out.println("What is the h?");
int h = in.nextInt();
//Don't forget to use 1.0/3.0 to make sure that the answer of 4.0/3.0 is
0.3333, not 0 (integer operation)
double answer = (1.0/3.0) * Math.PI * Math.pow(r,2) * h;
return answer;
}
}!
PENGAJARAN 6C SAINS KOMPUTER • TINGKATAN 4
MODUL DENGAN STRUKTUR
TATASUSUNAN
STANDARD KANDUNGAN
1.5 Amalan Terbaik Pengaturcaraan
1.6 Struktur Data dan Modular
STANDARD PEMBELAJARAN:
Murid boleh:
1.1.2 Menjelaskan ciri penyelesaian masalah berkesan
1.3.6 Menulis atur cara untuk memasukkan input dari papan kekunci
dan memaparkan output
1.6.2 Menggunakan subatur cara dan memahami konsep menghantar
parameter ke subatur cara dan mengembalikan data
1.6.3 Membezakan antara function dan procedure pada subatur cara
Guru hendaklah memastikan di akhir penggunaan modul PdP ini,
murid dapat mencapai Standard Pembelajaran yang dinyatakan
di atas.
Kandungan Muka surat
Rancangan Pengajaran 6C 273
Lembaran Kerja 6C-1 281
Skema Jawapan 292
PENGAJARAN 6C
STANDARD KANDUNGAN Masa: 60 Minit SAINS KOMPUTER • TINGKATAN 4
Penerapan Pemikiran
1.5 Amalan Terbaik Pengaturcaraan Komputasional (PPK):
1.6 Struktur Data dan Modular • Simulation (SIM)
STANDARD PEMBELAJARAN
1.5.3 Mengenal pasti nilai bagi pemboleh ubah
pada bahagian tertentu atur cara
1.6.2 Menggunakan subatur cara dan memahami
konsep menghantar parameter ke subatur
cara dan mengembalikan data
1.6.3 Membezakan antara function dan procedure
pada subatur cara
1.6.4 Menulis atur cara bermodular yang
mengandungi struktur tatasusunan
BAHAN BANTU MENGAJAR (BBM)
Bahan untuk kelas
Tiada
Bahan untuk setiap kumpulan 272
1. Cetakkan Lembaran Kerja 6C-1 untuk setiap kumpulan
Bahan untuk setiap murid 6C • MODUL DENGAN STRUKTUR DATA TATASUSUNAN
1. Lembaran Kerja 6C-1
SUMBER TAMBAHAN
1. Atur cara penerangan:
https://repl.it/CA3r
2. Atur cara latihan kumpulan (kerangka atur cara):
https://repl.it/CJip
3. Atur cara lengkap bagi latihan kumpulan:
https://repl.it/CJis
4. Dokumentasi untuk penulisan subaturcara baru:
https://docs.oracle.com/javase/tutorial/java/javaOO/methods.html
5. Dokumentasi rasmi tatasusunan
https://docs.oracle.com/javase/tutorial/java/nutsandbolts/arrays.html
6. Nota mengenai penghantaran dan penerimaan parameter
http://www.yoda.arachsys.com/java/passing.html
RANCANGAN PENGAJARAN 6C
MASA CADANGAN AKTIVITI BBM PEMETAAN
5 Set Induksi PPK
Minit
KA21 SAINS KOMPUTER • TINGKATAN 4
1. Guru merujuk semula kepada contoh sistem pusat sumber
sekolah. Tugas utama sistem adalah untuk mengemaskini
maklumat buku.
2. Guru juga menerangkan bahawa dalam sistem
mengemaskini maklumat buku, terdapat beberapa
jenis maklumat yang perlu diproses seperti maklumat
murid dan maklumat buku.
3. Murid cuba memikirkan jenis atur cara yang diperlukan
semasa memproseskan maklumat buku. (Guru memberi
petunjuk kepada penggunaan subatur cara dan
penggunaan tatasusunan untuk penyimpanan lokasi
maklumat buku dan maklumat murid)
4. Guru menerangkan tentang penggunaan subatur cara dan
tatasusunan dalam sistem pusat sumber ini.
50 Aktiviti 1: Modul Atur cara dengan Tatasusunan Standard
Minit Pembelajaran
1. Guru meminta murid untuk meneka apakah maksud 1.5.3
(Strings[] args) di fungsi main. 1.6.2 273
2. Pernyataan atur cara tersebut bermaksud bahawa fungsi 1.6.3
main sedia untuk menerima satu tatasusunan Strings yang 1.6.4 6C • MODUL DENGAN STRUKTUR DATA TATASUSUNAN
bernama args.
3. Guru menjelaskan bahawa subatur cara juga boleh terima KA21
data dalam bentuk tatasusunan dan menghantar data keluar KS
dalam bentuk tatasusunan.
4. Guru menunjukkan format bahasa pengaturcaraan bagi PPK
pemindahan data antara main() dengan subatur cara. Guru SIM
kemudian meminta murid menukarkan parameter biasa
kepada tatasusunan.
5. Contohnya, fungsi main sedia menerima satu tatasusunan
rentetan aksara (Strings) yang bernama args.
6. Berikut adalah contoh untuk penghantaran dan penerimaan
tatasusunan.
RANCANGAN PENGAJARAN 6C
MASA CADANGAN AKTIVITI BBM PEMETAAN
Rajah 6.1 SAINS KOMPUTER • TINGKATAN 4
7. Guru menerangkan bahawa penghantaran dan penerimaan 274
tatasusunan serta semua data adalah penghantaran nilai
sahaja. Nilai tatasusunan yang dihantar ke subatur cara tidak 6C • MODUL DENGAN STRUKTUR DATA TATASUSUNAN
akan berubah. Kita perlu mencipta tatasusunan yang baru
setiap kali untuk menyimpan nilai tatasusunan yang telah
diubahkan.
8. Dalam subatur cara doubleValue(), apabila kita menghantar
data tatasusunan kepada doubleValue() pada baris 7, kita
sebenarnya menciptakan satu lagi tatasusunan baru
bernama valueTimesTwo yang mempunyai semua nilai yang
dihantarkan kepadanya. Untuk memastikan perubahan
berlaku kepada nilai asal dalam subatur cara, kita
perlu pulangkan nilai baru dari subatur cara ke atur cara
utama dan menggantikan nilai asal dengan nilai baru.
RANCANGAN PENGAJARAN 6C
MASA CADANGAN AKTIVITI BBM PEMETAAN
9. Boleh bayangkan seperti begini, guru mempunyai kertas • Lampiran SAINS KOMPUTER • TINGKATAN 4
nota asal (merujuk kepada atur cara utama), apabila guru 6B-1
mengedarkan kertas itu kepada murid, (merujuk kepada
subatur cara), guru sebenarnya membuat satu salinan 275
(photocopy) nota untuk murid itu. Contengan murid
pada kertasnya tidak akan menganggu salinan asal yang
ada pada guru.
10. Untuk mengatasi masalah ini, setelah murid itu
melengkapkan salinan notanya, murid itu akan
memulangkan salinannya kepada guru dan nota asal akan
digantikan dengan salinan murid. Dengan ini, kertas yang
ada pada tangan guru (atur cara utama) merupakan nota
yang telah diproses oleh murid (subatur cara).
11. Guru membimbing murid dalam mengesani perubahan
pemboleh ubah dan juga aliran kawalan bersama murid.
12. Guru membahagikan murid kepada kumpulan berempat.
13. Guru melabelkan murid dengan nombor 1,2,3 dan 4 dan
memberitahu bahawa ini adalah kumpulan Homegroup
mereka.
14. Guru menerangkan bahawa murid akan membangunkan
satu aplikasi yang mempunyai 13 jenis fungsi yang
berlainan.
15. Guru menjelaskan tentang atur cara yang ada pada
https://repl.it/CJhf
16. Guru menerangkan bahawa fungsi rangka (skeleton
program) telah pun disediakan untuk mereka. )
Persamaan Perbezaan 6C • MODUL DENGAN STRUKTUR DATA TATASUSUNAN
Main
Ini adalah fungsi utama atur cara. Ia
displayMenu() mengandungi satu gelung do-while
untuk pengulangan paparan menu
dan pilihan. Ia juga mengandungi satu
kawalan pilihan switch untuk kawalan
pilihan.
Subatur cara procedure yang
memaparkan menu pilihan.
timesTwo(int[] value) Subatur cara function yang menerima
timesEight(int[] value) parameter tatsusunan integer dan
memulangkan tatasusunan integer yang
baru di mana semua nilai telah didarab
dengan dua.
Subatur cara function yang menerima
parameter tatsusunan integer dan
memulangkan tatasusunan integer yang
baru di mana semua nilai telah didarab
dengan lapan.
RANCANGAN PENGAJARAN 6C
MASA CADANGAN AKTIVITI BBM PEMETAAN
Persamaan Perbezaan 276SAINS KOMPUTER • TINGKATAN 4
Max(int[] value) Subatur cara function yang menerima
parameter tatasusunan integer dan
memulangkan nilai paling besar di
tatasusunan tersebut.
Min(int[] value) Subatur cara function yang menerima
parameter tatasusunan integer dan
memulangkan nilai paling kecil di
tatasusunan tersebut.
Gap(int[] value) Subatur cara function yang menerima
parameter tatasusunan integer dan
memulangkan nilai perbezaan antara
nilai paling besar dan paling kecil di
tatasusunan tersebut.
sumOfAll(int[] value) Subatur cara function yang menerima
parameter tatasusunan integer dan
memulangkan jumlah hasil tambah
semua integer talam tatasusunan
tersebut.
averageOfAll(int[] value) Subatur cara function yang menerima
parameter tatasusunan integer dan
memulangkan nilai purata semua integer
dalam tatasusunan tersebut.
addOne(int[] value) Subatur cara function yang menerima
parameter tatsusunan integer dan
memulangkan tatasusunan integer yang 6C • MODUL DENGAN STRUKTUR DATA TATASUSUNAN
baru di mana semua nilai telah
bertambah satu.
addFive(int[] value) Subatur cara function yang menerima
parameter tatsusunan integer dan
memulangkan tatasusunan integer yang
baru di mana semua nilai telah
dibertambah lima.
countOdd(int[] value) Subatur cara function yang menerima
parameter tatasusunan integer dan
memulangkan bilangan nombor ganjil
dalam tatasusunan tersebut.
RANCANGAN PENGAJARAN 6C
MASA CADANGAN AKTIVITI BBM PEMETAAN
Persamaan Perbezaan 277SAINS KOMPUTER • TINGKATAN 4
countEven(int[] value)
Subatur cara function yang menerima
countOddAndEven(int[] parameter tatasusunan integer dan
value) memulangkan bilangan nombor genap
dalam tatasusunan tersebut.
Subatur cara function yang menerima
parameter tatasusunan integer dan
memulangkan bilangan nombor ganjil
dan genap dalam tatasusunan tersebut.
17. Guru menunjuk carta alir untuk subatur cara timesTwo dan
timesEight dan menerangkan kepentingan modul iaitu
subatur cara boleh diguna semula dengan subatur cara lain.
Guru menjelaskan modul atur cara akan menyenangkan
kerja menghasilkan sebuah subatur cara.
Dalam contoh ini, atur cara timesEight cuma mengulang
subatur cara timesTwo sebanyak 3 kali.
timesTwo 6C • MODUL DENGAN STRUKTUR DATA TATASUSUNAN
int[] values
Isytiharkan satu tatasusunan baru
yang bernama doubleValue
Isytiharkan nilai i ke 0
Return tidak Adakah nilai i ya
doubleValue kurang daripada doubleValue[i] = values[i]*2
saiz values? i++
Rajah 6.2
RANCANGAN PENGAJARAN 6C
MASA CADANGAN AKTIVITI BBM PEMETAAN
timesEight() 278SAINS KOMPUTER • TINGKATAN 4
int[] values
Isytiharkan satu tatasusunan baru
yang bernama eightValue
Count = 0
tidak Adakah nilai i HantarkaneightValue kepada
kurang daripada
Return eightValue ya subatur cara doubleValue dan
3?
menetapkan nilai eightValue ke
nilai pulangan daripada subatur
cara doubleValue
doubleValue(eightValue)
Count++
Rajah 6.3
18. Guru juga boleh menunjukkan atur cara untuk mencarikan
nombor maksimum untuk mengulas pengitaran indeks
tatasusunan dengan gelung for.
max()
int[] values 6C • MODUL DENGAN STRUKTUR DATA TATASUSUNAN
Isytiharkan nilai maksimum
sementara, max = 0
Isytiharkan nilai i ke 0
Adakah nilai i ya
kurang daripada
saiz values?
tidak Adakah nilai ya
values[i] >= values[i] = max
tidak
max?
i++
return max
Rajah 6.4
RANCANGAN PENGAJARAN 6C
MASA CADANGAN AKTIVITI BBM PEMETAAN
19. Guru menerangkan bahawa seorang pengatur cara perlu
bekerjasama antara satu sama lain untuk melengkapkan SAINS KOMPUTER • TINGKATAN 4
tugasan. Untuk menghasilkan atur cara yang besar dan
kompleks ini memerlukan kerjasama kumpulan untuk
menghasilkannya. (KS)
20. Guru menerangkan bahawa murid akan diagihkan tugas • Lembaran
Kerja 6C-1
seperti berikut: (SIM) (1.5-3) (1.6-2) (1.6-3) (1.6-4)
a. Murid yang dilabelkan 1:
i. Subatur cara Min
ii. Subatur cara Max
iii. Subatur cara Gap
b. Murid yang dilabelkan 2:
i. Subatur cara sumOfAll
ii. Subatur cara averageOfAll
c. Murid yang dilabelkan 3
i. Subatur cara addOne
ii. Subatur cara addFive
d. Murid yang dilabelkan 4:
i. Subatur cara countOdd
ii. Subatur cara countEven
iii. Subatur cara countOddAndEven
21. Murid boleh membentuk kumpulan baru mengikut nombor.
Contohnya, semua murid yang dilabelkan 1 akan 279
membentuk kumpulan dengan murid label 1 yang lain.
22. Guru memberitahu bahawa kumpulan yang mengandungi
murid dari label yang sama dikenali sebagai (Expert Group).
23. Guru menerangkan bahawa dalam pembangunan aplikasi,
pengatur cara sebenarnya akan membentuk kumpulan
bekerja (working group) untuk membangunkan sebahagian
fungsi daripada aplikasinya. Dalam kes ini, kumpulan pakar 6C • MODUL DENGAN STRUKTUR DATA TATASUSUNAN
adalah kumpulan bekerja tersebut.
24. Guru juga boleh memberitahu bahawa subatur cara yang
diagihkan pada setiap kumpulan pakar adalah berkaitan
dengan satu sama lain. Murid boleh berbincang dalam
kumpulan pakar mereka dan bekerjasama untuk
melengkapkan tugasan yang diberi.
25. Guru mengingatkan murid bahawa tanggungjawab mereka
adalah amat penting, ini kerana atur cara yang lengkap
memerlukan kerjasama antara semua murid dalam
kumpulan homegroup untuk menyiapkan tugas masing-
masing.
26. Murid diberikan masa 20 minit untuk melengkapkan
tugasan dalam kumpulan pakar dan 10 minit dalam
kumpulan homegroup untuk menggabungkan semua
subatur cara.
27. Murid juga perlu lengkapkan Lembaran Kerja 6C-1 untuk
kumpulan homegroup mereka.
RANCANGAN PENGAJARAN 6C
MASA CADANGAN AKTIVITI BBM PEMETAAN
5 Penutup:
Minit
SAINS KOMPUTER • TINGKATAN 4
1. Guru bertanyakan murid contoh penggunaan tatasusunan
dan modul pengaturcaraan dalam kehidupan harian.
2. Guru terangkan bahawa pengaturcaraan secara bermodul
adalah trend utama dalam dunia pengaturcaraan. Hampir
semua atur cara komputer dan laman web adalah dalam
bentuk pengaturcaraan secara bermodul.
3. Guru menerangkan bahawa proses modul memudahkan
pembangunan aplikasi besar dan juga menyenangkan kerja
pengatur cara kerana modul yang telah ditulis boleh
dipakai semula.
4. Begitu juga dengan tatasusunan – tatasusunan yang
merupakan satu jenis struktur data yang amat biasa
dijumpai dalam perisian komputer dan telefon mudah alih.
280
6C • MODUL DENGAN STRUKTUR DATA TATASUSUNAN
Standard
Pembelajaran:
1.5.3, 1.6.2,
1.6.3, 1.6.4
LEMBARAN KERJA 6C-1
NAMA: TARIKH:
KELAS:
Anda adalah seorang pengatur cara untuk sebuah syarikat komputer. Syarikat anda dikehendaki untuk SAINS KOMPUTER • TINGKATAN 4
menghasilkan satu atur cara yang boleh mengubah dan menganalisis tatasusunan nombor.
Rangka untuk atur cara tersebut telah disediakan di laman sesawang: https://repl.it/CJip
Tugas anda adalah menyediakan subatur cara yang telah ditentukan:
Senarai subatur cara yang diperlukan adalah seperti berikut:
Kod Persamaan Fungsi / Penjelasan Agihan tugas Lengkap atau
tidak?
A Main Ini adalah fungsi utama atur cara. Ia Sudah Ya
mengandungi satu gelung do-while disediakan
untuk pengulangan paparan menu dan Ya
pilihan. Ia juga mengandungi satu Ya
kawalan pilihan switch untuk kawalan Ya
pilihan. Ya
B displayMenu() Subatur cara yang memaparkan menu Sudah
pilihan. disediakan
Subatur cara yang menerima Sudah
C timesTwo(int[] value) parameter tatsusunan integer dan disediakan
memulangkan tatasusunan integer
yang baru di mana semua nilai telah
didarab dengan dua. 281
D timesEight(int[] value) Subatur cara yang menerima Sudah
parameter tatasusunan integer dan disediakan
memulangkan tatasusunan integer
yang baru di mana semua nilai telah
didarab dengan lapan.
E01 Max(int[] value) Subatur cara yang menerima Sudah 6C • MODUL DENGAN STRUKTUR DATA TATASUSUNAN
parameter tatasusunan integer dan disediakan
memulangkan nilai paling besar di
tatasusunan tersebut.
E02 Min(int[] value) Subatur cara yang menerima Ahli 1
parameter tatasusunan integer dan
memulangkan nilai paling kecil di
tatasusunan tersebut.
E03 Gap(int[] value) Subatur cara yang menerima Ahli 1
parameter tatasusunan integer dan
memulangkan nilai perbezaan antara
nilai paling besar dan paling kecil di
tatasusunan tersebut.
F01 sumOfAll(int[] value) Subatur cara yang menerima Ahli 2
parameter tatasusunan integer dan
memulangkan jumlah hasil tambah
semua integer talam tatasusunan
tersebut.
F02 averageOfAll(int[] Subatur cara yang menerima Ahli 2
value) parameter tatasusunan integer dan
memulangkan nilai purata semua
integer dalam tatasusunan tersebut.
Standard
Pembelajaran:
1.5.3, 1.6.2,
1.6.3, 1.6.4
LEMBARAN KERJA 6C-1
Kod Persamaan Fungsi / Penjelasan Agihan tugas Lengkap atau
tidak?
G01 addOne(int[] value) Subatur cara yang menerima Ahli 3
parameter tatsusunan integer dan
memulangkan tatasusunan integer SAINS KOMPUTER • TINGKATAN 4
yang baru di mana semua nilai telah
bertambah satu.
G02 addFive(int[] value) Subatur cara yang menerima Ahli 3
parameter tatasusunan integer dan
memulangkan tatasusunan integer
yang baru di mana semua nilai telah
dibertambah lima.
H01 countOdd(int[] value) Subatur cara yang menerima Ahli 4
parameter tatasusunan integer dan
memulangkan bilangan nombor ganjil
dalam tatasusunan tersebut.
H02 countEven(int[] value) Subatur cara yang menerima Ahli 4
parameter tatasusunan integer dan
memulangkan bilangan nombor genap
dalam tatasusunan tersebut.
H03 countOddAndEven Subatur cara yang menerima Ahli 4
(int[]value) parameter tatasusunan integer dan
memulangkan bilangan nombor ganjil
dan genap dalam tatasusunan tersebut. 282
Anda dikehendaki bekerja dalam kumpulan pakar masing-masing untuk melengkapkan tugasan yang
diberikan. Setelah subatur cara anda telah lengkap, anda diminta untuk menggabungkan subatur cara dengan
ahli kumpulan yang berlainan untuk membentuk aplikasi lengkap.
6C • MODUL DENGAN STRUKTUR DATA TATASUSUNAN
Standard
Pembelajaran:
1.5.3, 1.6.2,
1.6.3, 1.6.4
LEMBARAN KERJA 6C-1
Carta alir E02
SAINS KOMPUTER • TINGKATAN 4
283
Atur cara E02
6C • MODUL DENGAN STRUKTUR DATA TATASUSUNAN
LEMBARAN KERJA 6C-1 Standard
Pembelajaran:
Carta alir E03
1.5.3, 1.6.2,
1.6.3, 1.6.4
SAINS KOMPUTER • TINGKATAN 4
284
Atur cara E03
6C • MODUL DENGAN STRUKTUR DATA TATASUSUNAN
Standard
Pembelajaran:
1.5.3, 1.6.2,
1.6.3, 1.6.4
LEMBARAN KERJA 6C-1
Carta alir F01
SAINS KOMPUTER • TINGKATAN 4
285
Atur cara F01
6C • MODUL DENGAN STRUKTUR DATA TATASUSUNAN
Standard
Pembelajaran:
1.5.3, 1.6.2,
1.6.3, 1.6.4
LEMBARAN KERJA 6C-1
Carta alir F02
SAINS KOMPUTER • TINGKATAN 4
286
Atur cara F02
6C • MODUL DENGAN STRUKTUR DATA TATASUSUNAN
Standard
Pembelajaran:
1.5.3, 1.6.2,
1.6.3, 1.6.4
LEMBARAN KERJA 6C-1
Carta alir G01
SAINS KOMPUTER • TINGKATAN 4
287
Atur cara G01
6C • MODUL DENGAN STRUKTUR DATA TATASUSUNAN
LEMBARAN KERJA 6C-1 Standard
Pembelajaran:
Carta alir G02
1.5.3, 1.6.2,
1.6.3, 1.6.4
SAINS KOMPUTER • TINGKATAN 4
288
Atur cara G02
6C • MODUL DENGAN STRUKTUR DATA TATASUSUNAN
Standard
Pembelajaran:
1.5.3, 1.6.2,
1.6.3, 1.6.4
LEMBARAN KERJA 6C-1
Carta alir H01
SAINS KOMPUTER • TINGKATAN 4
289
Atur cara H01
6C • MODUL DENGAN STRUKTUR DATA TATASUSUNAN
Standard
Pembelajaran:
1.5.3, 1.6.2,
1.6.3, 1.6.4
LEMBARAN KERJA 6C-1
Carta alir H02
SAINS KOMPUTER • TINGKATAN 4
290
Atur cara H02
6C • MODUL DENGAN STRUKTUR DATA TATASUSUNAN
Standard
Pembelajaran:
1.5.3, 1.6.2,
1.6.3, 1.6.4
LEMBARAN KERJA 6C-1
Carta alir H03
SAINS KOMPUTER • TINGKATAN 4
Atur cara H03
291
6C • MODUL DENGAN STRUKTUR DATA TATASUSUNAN
Komen guru:
Tarikh:
SKEMA JAWAPAN
LEMBARAN KERJA 6C-1
Anda adalah seorang pengatur cara untuk sebuah syarikat komputer. Syarikat anda dikehendaki untuk SAINS KOMPUTER • TINGKATAN 4
menghasilkan satu atur cara yang boleh mengubah dan menganalisis tatasusunan nombor.
Rangka untuk atur cara tersebut telah disediakan di laman sesawang: https://repl.it/CJip
Tugas anda adalah menyediakan subatur cara yang telah ditentukan:
Senarai subatur cara yang diperlukan adalah seperti berikut:
Kod Persamaan Fungsi / Penjelasan Agihan tugas Lengkap atau
tidak?
A Main Ini adalah fungsi utama atur cara. Ia Sudah Ya
mengandungi satu gelung do-while disediakan
untuk pengulangan paparan menu dan Ya
pilihan. Ia juga mengandungi satu Ya
kawalan pilihan switch untuk kawalan Ya
pilihan. Ya
B displayMenu() Subatur cara yang memaparkan menu Sudah
pilihan. disediakan
Subatur cara yang menerima Sudah
C timesTwo(int[] value) parameter tatasusunan integer dan disediakan
memulangkan tatasusunan integer
yang baru di mana semua nilai telah
didarab dengan dua.
D timesEight(int[] value) Subatur cara yang menerima Sudah 292
parameter tatasusunan integer dan disediakan
memulangkan tatasusunan integer
yang baru di mana semua nilai telah
didarab dengan lapan.
E01 Max(int[] value) Subatur cara yang menerima Sudah 6C • MODUL DENGAN STRUKTUR DATA TATASUSUNAN
parameter tatasusunan integer dan disediakan
memulangkan nilai paling besar di
tatasusunan tersebut.
E02 Min(int[] value) Subatur cara yang menerima Ahli 1
parameter tatasusunan integer dan
memulangkan nilai paling kecil di
tatasusunan tersebut.
E03 Gap(int[] value) Subatur cara yang menerima Ahli 1
parameter tatasusunan integer dan
memulangkan nilai perbezaan antara
nilai paling besar dan paling kecil di
tatasusunan tersebut.
F01 sumOfAll(int[] value) Subatur cara yang menerima Ahli 2
parameter tatasusunan integer dan
memulangkan jumlah hasil tambah
semua integer talam tatasusunan
tersebut.
F02 averageOfAll(int[] Subatur cara yang menerima Ahli 2
value) parameter tatasusunan integer dan
memulangkan nilai purata semua
integer dalam tatasusunan tersebut.
SKEMA JAWAPAN
LEMBARAN KERJA 6C-1
Kod Persamaan Fungsi / Penjelasan Agihan tugas Lengkap atau
tidak?
G01 addOne(int[] value) Subatur cara yang menerima Ahli 3
parameter tatsusunan integer dan
memulangkan tatasusunan integer SAINS KOMPUTER • TINGKATAN 4
yang baru di mana semua nilai telah
bertambah satu.
G02 addFive(int[] value) Subatur cara yang menerima Ahli 3
parameter tatasusunan integer dan
memulangkan tatasusunan integer
yang baru di mana semua nilai telah
dibertambah lima.
H01 countOdd(int[] value) Subatur cara yang menerima Ahli 4
parameter tatasusunan integer dan
memulangkan bilangan nombor ganjil
dalam tatasusunan tersebut.
H02 countEven(int[] value) Subatur cara yang menerima Ahli 4
parameter tatasusunan integer dan
memulangkan bilangan nombor genap
dalam tatasusunan tersebut.
H03 countOddAndEven Subatur cara yang menerima Ahli 4
(int[]value) parameter tatasusunan integer dan
memulangkan bilangan nombor ganjil
dan genap dalam tatasusunan tersebut. 293
Anda dikehendaki bekerja dalam kumpulan pakar masing-masing untuk melengkapkan tugasan yang
diberikan. Setelah subatur cara anda telah lengkap, anda diminta untuk menggabungkan subatur cara dengan
ahli kumpulan yang berlainan untuk membentuk aplikasi lengkap.
6C • MODUL DENGAN STRUKTUR DATA TATASUSUNAN
SKEMA JAWAPANMin(values)
LEMBARAN KERJA 6C-1Isytiharkan nilai minimum
sementara, min = 20000
Carta alir E02 Isytiharkan nilai i keMi0n(values)
tidak
Isytiharkan nilai minimum SAINS KOMPUTER • TINGKATAN 4
sementara, min = 20000
Isytiharkan nilai i ke 0
Adakah nilai i
kurang daripada
saiz values? ya
Adakah nilai i ya
kurang daripada
saiz values?
Adakah nilai
tidak values[iA[d<a=kah nilai ya
min?valumeisn[?i[ <=
ya
tidak tidak
vvaaluluese[i]s=[im] i=n min
i++
i++
Return min 294
Return min 6C • MODUL DENGAN STRUKTUR DATA TATASUSUNAN
Atur cara E02
//This function returns the minimum value in an array
public static int min(int[] value){
int min = 100000000;
for(int i = 0; i<value.length;i++){
if(value[i]<= min){
min = value[i];
}
}
return min;
}!
//This function returns the minimum value in an array
public static int min(int[] value){
int min = 100000000;
for(int i = 0; i<value.length;i++){
if(value[i]<= min){
min = value[i];
}
}
return min;
}!
SKEMA JAWAPAN Gap(values)
LEMBARAN KERJA 6C-1
Carta alir E03 Isytiharkan pemboleh ubah
dengan nama smallest
Gap(values)
sImsytiahallrekasntp=emmbionle(hvuablauhes) SAINS KOMPUTER • TINGKATAN 4
dengan nama smallest
smallest =min(values)
Isytiharkan pemboleh ubah
dengan nama biggest
Isytiharkan pemboleh ubah
dengan nama biggest
bigbgigegesstt==mmaxa(vxa(luveas) lues)
Gap = biggest - smallest
Gap = biggest - smallest
Return Gap
295
Return Gap
Atur cara E03
//This sftuantcitcioin!ntregtaupr(nisntt[h]e gap value (max - min) in an array
public value){
int min = min(value); 6C • MODUL DENGAN STRUKTUR DATA TATASUSUNAN
int max = max(value);
return max-min;
}
//This sftuantcitcioin!ntregtaupr(nisntt[h]e gap value (max - min) in an array
public value){
int min = min(value);
int max = max(value);
return max-min;
}
SKEMA JAWAPAN
LEMBARAN KERJA 6C-1
Carta alir F01 sumOfAll(values)
sumOfAll(values) SAINS KOMPUTER • TINGKATAN 4
Isytihar dan tetapkan nilai
sum sementara ke 0
Isytihar dan tetapkan nilai
sum sementara ke 0
Isytiharkan nilai i ke 0
Isytiharkan nilai i ke 0
Adakah nilai i ya
Akduraankgadharinpailadai i ya
kuransagiz vdaaluerisp? ada
saiz values?
Sum = sum + values[i]
tidak Sum = sum + values[i]
tidak i++
Return sum i++
Return sum 296
Atur cara F01 //This function returns the sum of all values in an array
public static int sumOfAll(int[] value){
int sum = 0; 6C • MODUL DENGAN STRUKTUR DATA TATASUSUNAN
for(int i = 0; i<value.length;i++){
sum = sum + value[i];
}
return sum;
}
//This function returns the sum of all values in an array
public static int sumOfAll(int[] value){
int sum = 0;
for(int i = 0; i<value.length;i++){
sum = sum + value[i];
}
return sum;
}
SKEMA JAWAPANaverageOfAll(values)
LEMBARAN KESeRt JsuAm6saCm-1a dengan nilai
pulangan daripada subatur
Carta alir F02 cara sumOfAll
averageOfAll(values)
totalVaplSuueltaesnugsma=nssadumaamripdaeOdnagfasAunbnlali(ltauvir alues) SAINS KOMPUTER • TINGKATAN 4
cara sumOfAll
Set tnoitlaalViasluizees=ssuammOafAlld(vealnuegs)an
saiz tatasusunan values
Set nilai size sama dengan
saiz tatasusunan values
AverAavegraege== ssuumm/siz/esize 297
Atur cara F02 Return average
Return average 6C • MODUL DENGAN STRUKTUR DATA TATASUSUNAN
//This function returns the average of all values in an array
public static double averageOfAll(int[] value){
double sum = (double) sumOfAll(value);
double size = (double) value.length;
double average = sum / size;
return average;
}
//This function returns the average of all values in an array
public static double averageOfAll(int[] value){
double sum = (double) sumOfAll(value);
double size = (double) value.length;
double average = sum / size;
return average;
}