Wednesday, December 5, 2012

Pengulangan atau Looping pada Turbo Pascal


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