Anda di halaman 1dari 11

MODUL 4 (bagian ke-3 dari 3) TEKNOLOGI INFORMASI DAN KOMUNIKASI

PERULANGAN PADA PASCAL


SEMESTER GANJIL

Nama peserta didik NIS / Absen Kelas : :

LABORATORIUM KOMPUTER 2
Jalan Parangtritis Km 5 Yogyakarta 55187 Telp. (0274)374459 http://agusriyantodf.blogspot.com

SMAN 1 SEWON

Perulangan (Looping) Menggunakan Repeat Until


Digunakan untuk melakukan pengulangan pengerjaan perintah.

Bentuk perulangan Repeat Until Variabelhitung:=nilaiawal; Repeat Perintah yg diulang; Variabelhitung:= Variabelhitung indeknaik/turun; Until Kondisi ;
Perulangan dilakukan selama kondisi bernilai SALAH Nilai Variabel hitung TIDAK OTOMATIS NAIK/TURUN Naik/turunnya nilai Variabel hitung dilakukan secara manual Contoh 1: i:=1; Repeat Writeln(SMA SEWON); i:=i+1; Until i=3;

Penjelasan : Sebelum masuk ke Repeat i diberi nilai awal =1, i=1, Masuk ke perulangan Repeat,
menulis SMA SEWON menaikkan nilai i sebanyak 1, i=i+1, dimana awalnya i =1

sehingga i=1+1=2. sekarang i=2


Diperiksa apakah i=3, karena terakhir bernilai 2 maka kondisi

bernilai SALAH sehingga mengulang lagi i=2, Masuk ke perulangan Repeat,


menulis SMA SEWON

menaikkan nilai i sebanyak 1, i=i+1, dimana i =2 sehingga i=2+1=3. sekarang i=3 Diperiksa apakah i=3, karena terakhir bernilai 3 maka kondisi bernilai BENAR sehingga perulangan berhenti Kesimpulan, output dari potongan program tersebut adalah menulis SMA SEWON sebanyak dua kali SMA SEWON SMA SEWON

Contoh 2: i:=5; Repeat Writeln(i); i:=i-1; until i<3; Penjelasan : Sebelum masuk ke Repeat i diberi nilai awal =5, i=5, Masuk ke perulangan Repeat,

menulis isi variabel i yakni angka

menurunkan nilai i sebanyak 1, i=i-1, dimana awalnya i =5 sehingga i=51=4. sekarang i=4 Diperiksa apakah i<3, karena i=4, maka kondisi bernilai SALAH, Sehingga mengulang i=4, Masuk ke perulangan Repeat,

menulis isi variabel i yakni angka

menurunkan nilai i sebanyak 1, i=i-1, dimana i =5 sehingga i=4-1=3. sekarang i=3 Diperiksa apakah i<3, karena i=3, maka kondisi bernilai SALAH, Sehingga mengulang i=3, Masuk ke perulangan Repeat,

menulis isi variabel i yakni angka

menurunkan nilai i sebanyak 1, i=i-1, dimana i =3 sehingga i=3-1=2. sekarang i=2 Diperiksa apakah i<3, karena i=2, maka kondisi bernilai BENAR, Sehingga BERHENTI mengulang Kesimpulan, output dari potongan program tersebut adalah menulis :

5 4 3

Perulangan dalam perulangan (Nested Looping) Perhatikan potongan program berikut: i:=1; Repeat a:=1; Repeat write(a); a:=a+1; Until a>i; i:=i+1; Until i=4; Penjelasan : Sebelum masuk ke Repeat pertama, i diberi nilai awal =1, i=1, masuk ke Repeat pertama, Sebelum masuk ke Repeat kedua, a diberi nilai awal =1, a=1, masuk ke Repeat kedua,
Menulis isi variabel a, yakni angka

Menaikkan nilai a, ingat a bernilai 1 sehingga a=a+1=1+1=2, sekarang a=2 Diperiksa apakah a>i, karena a=2 dan i=1 maka kondisi bernilai BENAR sehingga berhenti dari repeat kedua, melanjutkan perintah yakni menaikkan nilai i, i:=i+1; i:=1+1; i:=2; i sekarang bernilai 2 Diperiksa apakah i=4?, karena i=2 maka kondisi bernilai SALAH sehingga mengulang repeat yang pertama i=2, masuk ke Repeat pertama, Sebelum masuk ke Repeat kedua, a diberi nilai awal =1, a=1, masuk ke Repeat kedua,
Menulis isi variabel a, yakni angka

Menaikkan nilai a, ingat a bernilai 1 sehingga a=a+1=1+1=2, sekarang a=2 Diperiksa apakah a>i, karena a=2 dan i=2 maka kondisi bernilai SALAH sehingga MENGULANG a=2, masuk ke Repeat kedua,
Menulis isi variabel a, yakni angka

Menaikkan nilai a, ingat a bernilai 1 sehingga a=a+1=2+1=3, sekarang a=3

Diperiksa apakah a>i, karena a=3 dan i=2 maka kondisi

bernilai BENAR maka kondisi bernilai BENAR sehingga berhenti dari repeat kedua, melanjutkan perintah yakni menaikkan nilai i, i:=i+1; i:=2+1; i:=3; i sekarang bernilai 3 Diperiksa apakah i=4?, karena i=3 maka kondisi bernilai SALAH sehingga mengulang repeat yang pertama i=3, masuk ke Repeat pertama, Sebelum masuk ke Repeat kedua, a diberi nilai awal =1, a=1, masuk ke Repeat kedua,
Menulis isi variabel a, yakni angka

Menaikkan nilai a, ingat a bernilai 1 sehingga a=a+1=1+1=2, sekarang a=2 Diperiksa apakah a>i, karena a=2 dan i=3 maka kondisi bernilai SALAH sehingga MENGULANG a=2, masuk ke Repeat kedua,
Menulis isi variabel a, yakni angka

Menaikkan nilai a, ingat a bernilai 1 sehingga a=a+1=2+1=3, sekarang a=3


Diperiksa apakah a>i, karena a=3 dan i=3 maka kondisi

bernilai SALAH sehingga MENGULANG a=3, masuk ke Repeat kedua,


Menulis isi variabel a, yakni angka

Menaikkan nilai a, ingat a bernilai 1 sehingga a=a+1=3+1=4, sekarang a=4


Diperiksa apakah a>i, karena a=4 dan i=3 maka kondisi

bernilai

BENAR

sehingga

berhenti

dari

repeat

kedua,

melanjutkan perintah yakni menaikkan nilai i, i:=i+1; i:=3+1; i:=4; i sekarang bernilai 4 Diperiksa apakah i=4?, karena i=4 maka kondisi bernilai BENAR sehingga Berhenti mengulang repeat yang pertama. Jadi potongan program tersebut akan mengeluarkan output :

1 1

2 1 2 3 Praktikum 1
Menulis teks INDONESIA sebanyak yang dikehendaki pengguna komputer Program praktikum1; Uses wincrt; Var a,b:integer; Begin Write(Mau menulis berapakali :); Readln(b); a:=1; Repeat write(Indonesia); a:=a+1; Until a>b; End. 1. Perhatikan hasil dari program di atas! Berapa kali menulis kata Indonesia memasukkan angka 5? Jawab : .

saat

pengguna

computer

2. Jika nilai a dimulai dari 2, berapa kali kata Indonesia tertulis saat

pengguna computer memasukkan angka 5? (Baris ke 7 diganti, a:=2;) Jawab : .


3. Jika nilai a dimulai dari 4, berapa kali kata Indonesia tertulis saat

pengguna computer memasukkan angka 5? (Baris ke 7 diganti, a:=4;) Jawab : .


4. Jika nilai a dimulai dari 6, berapa kali kata Indonesia tertulis saat

pengguna computer memasukkan angka 5? (Baris ke 7 diganti, a:=6;) Jawab : .

Praktikum 2

Menuliskan n bilangan asli yang pertama Misal input n= 5 input n= 3 output= 1 2 3 4 5 output= 1 2 3 Program praktikum2; Uses wincrt; Var ; Begin Write(masukkan nilai n :); ; a:=; Repeat Write(); a:=+; Until ; End.

Praktikum 3
Menuliskan n bilangan ganjil yang pertama Misal input n= 5 input n= 3 output= 1 3 5 7 9 output= 1 3 5 Program praktikum3; Uses wincrt; Var ; Begin Write(masukkan nilai n :); ; a:=; Repeat Write(2* - ); a:=+; Until ; End.

Praktikum 4
Menuliskan n bilangan genap yang pertama. Misal input n= 5 output= 2 4 6 8 10 Program praktikum4; Uses wincrt; Var ;

Begin Write(masukkan nilai n :); ; a:=; Repeat Write(2*); a:=+; until ; End.

Praktikum 5
Menuliskan n bilangan asli yang pertama, tetapi jika ganjil ganti dengan karakter w. Misal input n= 10 output= w2w4w6w8w10 Program praktikum5; Uses wincrt; Var ; Begin Write(masukkan nilai n :); ; a:=; Repeat If mod = Then Write() Else write(); a:=+; Until ; End.

Praktikum 6
Menuliskan n bilangan asli yang pertama, tetapi jika genap ganti dengan karakter z. Misal input n= 10 output= 1z3z5z7z9z Program praktikum6; Uses wincrt; Var ; Begin Write(masukkan nilai n :); ; a:=; Repeat

If mod = Then Write() Else write(); a:=+; Until ; End.

Praktikum 7
Menuliskan n bilangan asli yang pertama, tetapi jika urut dari yang besar dahulu Misal input n= 10 output= 10 9 8 7 6 5 4 3 2 1 Program praktikum7; Uses wincrt; Var ; Begin Write(masukkan nilai n :); ; Repeat Write(); n:=-; Until ; End.

Praktikum 8
Menuliskan n bilangan ganjil positif yang pertama, tetapi jika urut dari yang besar dahulu Misal input n= 5 output=9 7 5 3 1 Program praktikum8; Uses wincrt; Var ; Begin Write(masukkan nilai n :); ;

Repeat write(2*-1) := - 1; Until ; End.

Praktikum 9
Perulangan dalam perulangan Misal input n= 5 output=1 12 123 1234

12345

Program praktikum9; Uses wincrt; Var ; Begin Write(masukkan nilai n :); ; i:=1; Repeat a:=; Repeat write(); :=+1; Until ; :=+1; Until ; End.

Praktikum 10
Perulangan dalam perulangan Misal input n= 5 output=1 21 321 4321 54321 Program praktikum10; Uses wincrt; Var ; Begin Write(masukkan nilai n :); ; i:=1;

Repeat a:=; Repeat write(); :=-1; Until ; :=+1; Until ; End.

Praktikum 11
Menjumlahkan n bilangan asli yang pertama Misal input n= 5 input=3 output=15 output=6 Program praktikum13; Uses wincrt; Var ; Begin Write(masukkan nilai n :); ; a:=1; Jum:=0; Repeat Jum:=jum+; a:=a+1; Until ; Writeln(Jumlah =,); End.

Anda mungkin juga menyukai