LOOPING DIPASCAL
pengulangan digunakan untuk melakukan perulangan terhadapa suatu program yang digunakan. Dengan kata lain, pengulangan memungkinkan kita untuk menjalankan beberapa pernyataan hanya dengan menuliskan pernyataan tersebut satu kali saja.
BACA JUGA " ARTIKEL MENARIK LAINNYA MENGENAI PASCAL DISINI "
Bahasa PASCAL memiliki 3 buah konstruksi untuk melakukan pengulangan yaitu :
1. For
2. While……Do
3. Repeat……Until
PERULANGAN FOR DO
Kontruksi perulangan FOR pada umumnya digunakan untuk melakukan pengulangan yang banyaknya sudah diketahui secara pasti. Dalam perulangan jenis ini kita Selalu membuhkan variabel sebagai indeks pengula-ngan yang dapat bertipe bilangan bulat, kerakter, maupun anumersi. Berikut adalah pendefinisiannya.
(Untuk satu Stetement)
For variabel_indeks := batas_awal to batas_akhir do
Statement_yang_akan _diulang;
(Untuk statemen yang banyaknya lebih dari satu)
For variabel_indeks:= batas_awal to batas_akhir do
begin
Statement_yang_akan _diulang;
Statement_yang_akan _diulang;
……….
end;
Dalam bahasa PASCAL blok pemilihan FOR juga dapat dapat digunakan untuk melakukan pengulangan yang sifatnya menurun, yaitu dengan cara mengganti kata kunci to dengan downto.oleh karena sifatnya menurun, maka nilai batas awal harus lebih besar daripada nilai batas akhir. Berikut adalah contoh sourcenya.
CONTOH CODING PERULANGAN FOR
program PERULANGAN_FORDO_case_of_2;
uses crt;
var
nama, grade, ket : string;
i, jm,mtk, bing, algoritma : integer;
rata2: real;
jumlah, hasilrata2: longint;
begin
clrscr;
write('Masukkan Jumlah Mahasiswa: ');readln(jm);
writeln;
for i:=1 to jm do
begin
writeln('Mahasiswa ke-',i);
write('Masukkan Nama : ');readln(Nama);
write('MAsukkan Nilai matematka : ');readln(mtk);
write('Masukkan Nilai B.inggris : ');readln(bing);
write('Masukkan NIlai Algoritma : ');readln(algoritma);
jumlah:= mtk+bing+algoritma;
rata2 := jumlah/3;
hasilrata2 := round(rata2);
case hasilrata2 of
85..100 : Grade:='A';
70..84 : Grade:='B';
55..69 : Grade:='C';
45..54 : Grade:='D';
0..44 : Grade:='E';
end;
case Grade of
'A' : Ket:='SANGAT BAIK';
'B' : Ket:='BAIK';
'C' : Ket:='CUKUP';
'D' : Ket:='KURANG';
'E' : Ket:='BURUK';
end;
writeln;
writeln('-------------------HASIL-------------');
writeln('Nama = ' ,nama);
writeln('Nilai Matematika = ' ,mtk);
writeln('Nilai B.Inggris = ' ,bing);
writeln('Nilai Algoritma = ' ,algoritma);
writeln('Nilai Rata-Rata = ' ,rata2:0:2);
writeln('Grade = ' ,Grade);
writeln('Keterangan = ' ,ket);
writeln;
writeln('-----------------------------------------------');
end;
readln;
end.
Program diatas akan melakukan statemen sebanyak jumlah masiswa yang dimasukkan , mulai dari indeks ke-1 sampai indeks sebanyak jumlah mahasiswa.dengan FOR DO bisa melakukan perulanga dari yang terkecil maupun sebaliknya.
PERULANGAN WHILE DO
Berbeda dengan bentuk pengulangan FOR, pada konstruksi pengulangan WHILE ini terdapat suatu kondisi yang harus diperiksa terlebih dahulu. Apabila suatu kondisi yang didefinisikan bernilai benar maka statemen yang terdapat dalam blok pengulangan pun akan dieksekusi. Sebaliknya apabila suatu kondisi salah, maka program tidak akan pernah memasuki blok pengulangan.dengan kata lain statemen blok pengulangan akan diabaikan.
untuk itu, dalam pengulangan jenis ini, biasanya digunakan sebuah variabel sebagai indeks pengulangan sekaligus sebagai kondisi yang akan diperiksa.Nilai dari variabel tersebut juga tentu harus diinisialisasi terlebih dahulu sehingga variabel memiliki nilai awal pada saat pengecekan kondisi.
(Untuk satu Stetement)
while (kondisi) do
Statement;
(Untuk statemen yang banyaknya lebih dari satu)
while (kondisi) do
begin
Statemen1;
Statemen2;
………………
end;
CONTOH CODING PERULANGAN WHILE DO
program while_do;
uses crt;
var
i : integer;
begin
clrscr;
i :=1;
while i <=15 do
begin;
writeln(i,'.SAYA INGIN JADI PROGRAMER ');
i :=i+1;
end;
readln;
end.
Program diatas akan melakukan statemen sebanyak 15 , mulai dari indeks ke-1 sampai indeks sebanyak 15 dan akan berhenti setelah 15.
PERULANGAN REPEAT UNTIL
Blok pengulangan jenis ini sebenarnya mirip dengan blok pengulangan WHILE, perbedaannya hanya pada jenis pengulangan akan terus dilakukan apabila kondisi yang didefinisikan masih bernilai salah. Jadi, dengan kata lain pengulangan hanya akan dihentikan apabila kondisi bernilai benar. Dalam pengulangan jenis kondisi akan dituliskan di akhir blok. Hal ini tentu menyebabkan pada bagian perulangan jenis ini statemen minimal akan dieskusi satu kali, walaupun ternyata kondisi yang didefinisikan terpenuhi bernilai benar. untuk itu pengulangan jenis ini pada umumnya digunakan untuk kasus-kasus pengulangan yang tidak tergantung pada kondisi awal. Berikut adala pendifinisiannya.
Repeat
statement;
…….
Until (kondisi);
CONTOH CODING PERULANGAN REPEAT UNTIL
program repeat_until;
uses crt;
var
i : integer;
begin
clrscr;
i:=1;
repeat
writeln(i,'JADILAH SEORANG PROGRAMER');
i:=i+1;
until i>15;
readln;
end.
CONTOH CODING PERULANGAN REPEAT UNTIL
program tembak_cewek;
uses crt;
var
nama1, nama2 : string;
almatt : string;
ganteng, selalu, perhatian, bersama:integer;
hasil:integer;
ulang: string;
begin
clrscr;
write('Masukkan nama Anda : ');readln(nama2);
write('Masukkan nama yang duduk di samping anda : ');readln(nama1);
writeln;
writeln('Berikan penilaian anda terhadap ''' ,nama1, ''' sesuai hati anda ! ');
writeln;
writeln('Masukkan angka 1 - 10 ');
write('Apakah dia ganteng ? : ');readln(ganteng);
writeln;
writeln('Masukkan angka 1 - 5 ');
write('Apakah dia selalu ada untukmuh ? : ');readln(selalu);
writeln;
writeln('Masukkan angka 1 - 10 ');
write('Apakah menurutmuh dia perhatian ? : ');readln(perhatian);
writeln;
writeln('Masukkan angka 1 - 5 ');
write('Apakah kalian sering bersama ? : ');readln(bersama);
writeln;
hasil:= ganteng + selalu + perhatian + bersama;
if hasil >=0 then write('kemungkian ''',nama1,''' cocok untuk pacar anda!');
writeln;
begin
repeat;
write(nama1,' menyukai muhhh, apakah kamu mau menjadi pacarnya ?');readln(ulang);
until ulang='iya';
write('Selamat anda berpacaran dengan ''',nama1,''' ''',nama1,''' akan selalu menjagamu. ');
end;
readln;
end.
Itulah beberapa penjelasan mengenai perulangan dipascal, jika penjelasan diatas kurang lengkap atau mengalami kendala bisa berkomentar dibawah. semoga artikel ini dapat bermanfaat dan menambah wawasan baru, yang tidak kalah penting semoga artikel ini mampu menjawab pertanyaan teman-teman yang lagi belajar pascal.
WASSALAM





Post a Comment for "BELAJAR PASCAL : PENJELASAN LENGKAP JENIS-JENIS PERULANGAN DIPASCAL "