Dalam melakukan looping tentunya kita harus memiliki variabel penghitung ( pencacah ) yang dapat menentukan berapa kali kiranya pengulangan dilakukan. Variabel pencacah ini haruslah variabel yang memiliki tipe original. Tugas dari variabel ini yang diinginkan pengulangan akan terhenti. Biasanya dalam program dituliskan sebagai :
X := X + 1; (Pencacah Naik )
X := X - 1; (Pencacah Turun)
Dimana X merupakan variabel bertipe integer, byte atau word ( dalam pemograman biasanya dipilih tipe integer ) atau dengan cara lain :
Inc(x) dan Dec(X);
Pengulangan dalam pemograman bahasa pascal terbagi atas 3 macam :
1. For ... to ... do
Begin
....
End;
Adalah suatu perintah looping yang mengunakan pencacah naik ( Increment ), Artinya setiap pengulangan dilakukan variabel pencacah akan bertambah. Syntax penulisannya :
For [ Nama Variabel ] := [ Indeks Awal ] to [ Indeks Akhir ]
Begin
Statement;
End;
Latihan –Latihan Program
Program Matematika;
Uses Crt;
Var
I : Byte;
Kuadrat, Akar : Real;
Begin
Clrscr;
Writeln(‘Tabel Kuadrat dan Akar Kuadrat’);
Writeln(‘&&&&&&&&&&&&&&&&&’);
Writeln(‘ Bilangan Kuadrat Akar Kuadrat’);
Writeln(‘&&&&&&&&&&&&&&&&&’);
Wrteln;
For I := 1 to 10 do
Begin
Kuadrat := Sqr(I);
Akar := Sqrt(I);
Writeln(I:6, Kuadrat :10:0, Akar:15:2’);
End;
Writeln(‘&&&&&&&&&&&&&&&&&’);
End;
Program Menggeser_Bintang
Uses Crt;
Var
Bintang : Integer;
Begin
Clrscr;
For Bintang := 5 to 23 do
Begin
Gotoxy(5,Bintang );
Writeln(‘*’);
Delay (100);
End;
For Bintang := 5 to 75 do
Begin
Gotoxy(Bintang,23 );
Writeln(‘*’);
Delay (100);
End;
For Bintang := 23 downto 5 do
Begin
Gotoxy(75,Bintang );
Writeln(‘*’);
Delay (100);
End;
For Bintang := 75 downto 5 do
Begin
Gotoxy(Bintang,5 );
Writeln(‘*’);
Delay (100);
End;
End.
2. While Do
End;
Adalah suatu langkah looping yang mengunakan eskpresi kondisi logika untuk menjajaki apakah pengulangan masih dilakukan atau tidak, jika kondisi benar (True) maka looping akan terus dilakukan dan sebaliknya. Syntax pemakaiannya adalah
Nama variabel := Indeks Awal
While ( Kondisi ) do
Begin
Statement ;
Inc(Nama_variabel);
End;
Latihan – Latihan Program :
Program Pitagoras;
Uses Crt;
Var
A,B,C : Real;
I : Integer;
Begin
Clrscr;
I:=0;
While ( I < 3 ) do
Begin
Write(‘Nilai A adalah ‘);Readln(A);
Write(‘Nilai B adalah ‘);Readln(B);
C := sqrt(Sqrt(A) + Sqrt(B));
Writeln;
Writeln(‘Hasil adalah’,C:8:2);
Inc(I);
End;
Readln;
End.
Program Bilangan_Genap
Uses Crt;
Var
I :Integer;
Begin
Clrscr;
I:=0;
Writeln(‘Sepuluh bilangan genap pertama : ’);
While (I < 10 ) do
Writeln(I+2);
Readln;
End.
3. Repeat
Until
Adalah proses looping kebalikan dari while do. Langkah perintah ini proses pengulangan berlangsung jika kondisinya salah. Jadi proses looping diulang dulu baru di kondisikan dan tidak perlu digunakan begin dan end lagi
Syntax penulisannya :
[ Nama variabel ] := 0;
Repeat
Statement;
Inc(Nama Variabel);
Until ( Kondisi)
Latihan Latihan Program
Program Validasi_Nilai
Uses Crt;
Var
Nilai :Integer;
Benar : Boolean;
Begin
Clrscr;
Repeat
Write(‘Masukan Nilai 0 s/d 100 : ‘);readln(Nilai);
Benar := nilai in [0..100];
If not (benar) then
Writeln(‘%% Nilainya Salah %%’);
writeln;
Until (Benar );
End.
Program Demontrasi_Pengulangan;
Uses Crt;
Var
I : Integer;
Begin
Clrscr;
I:=0;
While (I <= 100 ) do
Begin
Gotoxy(1,1);
Write(‘posisi counter : ‘ ,I);
Inc(I);
Delay(100);
End;
Readln;
End.
Kasus
Buat program looping untuk menghitung 2 data kredit Nasabah Bank , dengan ketentuan No Nasabah , Nama Nasabah, alamat Nasabah, Besar Pinjaman, Suku Bunga ,Lama Pinjaman.
Untuk mencari bunga adalah besar pinjaman dikali lama pinjaman dikali suku bunga, nilai pengembalian adalah besar pinjaman ditambah bunga
Output :
####################################
Data Kredit Nasabah Bank Swasta
####################################
Nomer Nasabah :
Nama Nasabah :
Alamat Nasabah :
Besar Pinjaman :
Lama pinjaman :
Suku Bunga :
Bunga :
Nilai Pengembalian :
Nomer Nasabah :
Nama Nasabah :
Alamat Nasabah :
Besar Pinjaman :
Lama pinjaman :
Suku Bunga :
Bunga :
Nilai Pengembalian :
####################################
No comments:
Post a Comment