You are on page 1of 7

Modul 43 Sains Komputer Tingkatan 4

1.4.4 Struktur Kawalan Ulangan yang Melibatkan Operator Increment dan


Decrement, Class Math dan Boolean. (M/S 102 - 107)
Obj:
1. Murid boleh menggunakan operator increment atau decrement dalam segmen kod yang
dibina untuk menyelesaikan masalah.
2. Murid boleh menggunakan subaturcara Math.Random dan Boolean Flag dalam
segmen kod yang dibina untuk menyelesaikan masalah.

Operator Increment (++) dan Decrement (--)


1. Digunakan dalam struktur kawalan ulangan ( for, while, do-while ) sebagai pembilang.
2. Operator increment (++) ialah penambahan nilai pemboleh ubah bagi bilangan nombor
tertentu.
3. Sebaliknya, operator decrement (--) mengurangkan nilai pemboleh ubah bagi bilangan
nombor tertentu.

Contoh 1 for - increment:


0
public class Main { 1
public static void main(String[] args) { 2
for (int i = 0; i < 5; i++) { 3
4
System.out.println( i );
}
}
}

Contoh 2 for - decrement:

public class Main { 5


public static void main(String[] args) { 4
for (int i = 5; i > 0; i -= 1) { 3
System.out.println(i); 2
}
1
}
}

Contoh 3 while - increment:


0
public class Main { 1
public static void main(String[] args) { 2
int i = 0; 3
while (i < 5) { 4
System.out.println(i);

i ++;

}
}
}

Contoh 4 while - decrement:

public class Main {


public static void main(String[] args) { 10
8
int i = 10; 6
4
while ( i > 0 ) { 2

System.out.println(i);

i -= 2;

}
}
}

Contoh 5 do-while - increment:

public class DoWhileLoopExample {


public static void main(String args[]){ > run DoWhile_1_inc
0
1
int i = 0; 2
3
do{ 4
5
System.out.println(i); 6
7
i +=1; 8
9
>
}while(i <10);
}
}

Contoh 6 do-while - decrement:


10
public class DoWhile_1_dec { 8
public static void main(String args[]){
6
4
int i=10;
2
do{
System.out.println(i);

i -= 2 ; // decrement sebanyak -2

} while ( i > 0 ); // selagi nilai i lebih besar dari 0 - gelung akan berulang
}
}
Math.random()
1. Math.random() ialah subatur cara Java untuk menjana nombor secara rambang.
2. Math.random() menggunakan waktu sistem sebagai nilai benih untuk memulakan
penjanaan nombor rambang.
3.Subatur cara ini digunakan setiap kali diperlukan untuk menjana suatu nombor rambang
antara 0 dan 1.

4.Sekiranya nombor rambang diperlukan adalah di antara 1 hingga 10, gunakan ungkapan

(int)(Math.random()*10) + 1

5. Sekiranya nombor rambang diperlukan adalah di antara 1 hingga 100, maka ungkapan

(int)(Math. random()*100) + 1

Bagaimana pula jika nombor rambang diperlukan dalam julat 1 hingga 6?

(int)(Math. random()*6) + 1

contoh 6 Math.random()
> run m_random
public class m_random {
public static void main(String[] args) { Nombor Pilihan Random: 37
>
int number = (int)(Math.random() * 100);

System.out.println ( "Nombor Pilihan Random: " + number ) ;

}
}

contoh 7 Math.random() - dalam gelung do-while

public class m_random_1 {


public static void main(String[] args) { > run m_random_1
Random number: 29
int i = 0; Random number: 78
Random number: 56
do{ Random number: 28
Random number: 25
int number = (int)(Math.random() * 100);
>
System.out.println ( "Random number: " + number );

i += 1 ;

} while ( i < 5 ) ;
}
}
Bendera Boolean

Contoh 8 - Math.random dan scanner input dalam gelung do-while dan for.

Lempar dadu sebanyak 20 kali. Aturcara akan menjana 20 nombor antara 1 - 6.

import java.util.Scanner;
public class m_random_scanner {
public static void main(String[] args) {

String input;
int i;
Scanner scanner=new Scanner(System.in);

do{

for(i = 1; i <= 20; i+=1){

int number = (int)(Math.random() * 6) + 1;

System.out.print(number + " ");

;}

System.out.println("Taip y untuk teruskan Taip n untuk keluar sistem");


input=scanner.next();
}while(input.equals("y"));
}
}

output

Welcome to DrJava. Working directory is E:\badrol\SK 4Tek 2020\1.4.4


> run m_random_scanner
6 6 3 5 2 5 1 5 4 2 4 1 3 6 1 6 1 4 2 3 Taip y untuk teruskan Taip n untuk keluar sistem
[ y ]
6 2 4 1 2 2 2 4 4 5 1 3 4 4 2 1 6 4 1 1 Taip y untuk teruskan Taip n untuk keluar sistem
[ n ]
>
Contoh 9- Mat.random,scanner input Boolean flag dalam gelung do-while, for dan
if.else

Bagaimana jika atur cara membenarkan pengguna menentukan sama ada ingin meneruskan
satu lagi set 20 nombor rambang?
Dalam hal ini, kod di atas boleh diletakkan dalam kawalan ulangan do-while dan satu
pemboleh ubah Boolean digunakan untuk mengawal ulangan.

Pemboleh ubah ini beroperasi sebagai flag, atau bendera penentu (teruskan atau tamat).
Sebelum memasuki gelung seterusnya, pengguna ditanya sama ada ingin meneruskan atur
cara itu lagi.

Jika "Benar", flag diset sebagai True.


Jika sebaliknya, flag diset sebagai False.

TEKNIK LERAIAN:

1. Jana 20 nombor secara rawak


2. Guba gelung do-while
3. Guna pemboleh ubah Boolean iaitu flag
4. Pengguna pilih untuk teruskan sistem (true) atau keluar (false).
flag = true - teruskan
flag = false - keluar

INPUT:

int pembilang = 0;

boolean flag = true;

PROSES:

jana 20 nombor secara rawak - guna Math.random()

julat nombor (range) 1- 10

menentukan pilihan pengguna ya untuk teruskan no untuk tamat sistem (gelung)

OUTPUT:

papar 20 julat antara 1 - 10 nombor secara rawak

pilihan untuk teruskan sistem atau keluar


import java.util.Scanner;
public class m_random_flag {
public static void main(String[] args) {

Scanner scanner=new Scanner(System.in);


boolean flag = true;

do{

// jana 20 nombor
// range nombor antara 1-10

for(int i = 0; i <= 20; i+=1){

int number = (int)(Math.random() * 10)+1;

System.out.print(number + " ");

;}

System.out.println("\nTaip ya untuk teruskan Taip no untuk keluar sistem");

if(scanner.next().equals("ya")){flag = true;}

else{flag = false;}

}while(flag);
}
}

output:

Welcome to DrJava. Working directory is E:\badrol\SK 4Tek 2020\1.4.4


> run m_random_flag
10 6 8 8 3 5 4 5 9 5 4 4 1 2 5 10 6 5 10 6 5
Taip ya untuk teruskan Taip no untuk keluar sistem
[ ya ]
296147411694231673174
Taip ya untuk teruskan Taip no untuk keluar sistem
[ ya ]
6 2 10 10 7 3 5 2 5 4 1 1 4 4 4 8 4 1 1 6 1
Taip ya untuk teruskan Taip no untuk keluar sistem
[ no ]
>
TUGASAN:

1. Tulis Kod Java:

Eksperimen menentukan kekerapan nombor dadu 1, 2, 3, 4, 5 dan 6 hasil 100 kali


lambungan rambang agak sukar dibuat secara manual.
Katakan hasil eksperimen adalah peratusan kekerapan setiap nombor dadu
dalam 100 lambungan.

panduan m/s 106 buku teks.

You might also like