Penggunaan ARRAY,FOR dan REPEAT UNTIL pada Algoritma
1. ARRAY
Array adalah salah satu tipe data terstruktur (structured data type) bentukan.Array atau larik dibutuhkan untuk menyimpan serangkaian elemen yang bertipe sama,berstruktur homogen (homogenous structure),yang disebut tipe basis (base type).
Array juga disebut struktur yang dapat diakses secara acak (random-acces structure) karena smua elemen array dapat diacu secara acak dengan aturan tertentu,yaitu dengan mengetahui nomor urutnya yang disebut index( index).
Berdasarkan dimensinya,array dibedakan menjadi dua,yaitu:
a. Array satu dimensi (one-dimensional array)
b. Array dua dimensi (two-dimensinal array)
a. Array satu dimensi (one-dimensional array)
Skema umum pendeklarasian array satu dimensi adalah sebagai berikut:
Dimana I adalah yang menyatakan jangkauan array,mulai dari indeks terkecil sampai terbesar. I bertipe tertentu yang disebut tipe indeks (index type).Tipe indeks harus tipe yang mempunyai keterurutan (terdefinisi suksesor dan predesesor-nya),atau ordinal.Contoh tipe ini adalah integer dan character.
Berikut diberikan beberapa contoh pendeklarasian array dalam bahasa Pascal :
Contoh:
Buatlah program dakam bahasa pascal yang membaca sebuah integer,n,dan mengisi array integer,TabInt,mulai indeks 1 sampai n .
Jawab :
program isiarray;
var
TabInt : array [1..100] of integer;
n : integer; {indeks efektif,n<=100}
i : integer; {indeks pengisian array}
begin
write(‘nilai n = ‘);
readln(n);
for i:=1 to n do
begin
write(‘TabInt[‘ ,I, ’] = ‘];readln(TabInt [i] );
end;
end.
Masukan/keluaran
Nilai n = 3
TabInt[1] = 5
TabInt[2] = 32
TabInt[3] = 9
b. ARRAY dua dimensi (two-dimensional array)
Selain dikenal array satu dimensi (one-dimensional array)seperti contoh diatas juga terdapat array dua dimensi (two-dimensional array).Jika array satu dimensi seperti vektor dalam matematika,maka array dua dimensi seperti matriks.
Secara umum array dua dimensi dideklarasikan dengan aturan :
Dimana I dan J menyatakan jangkauan array ,mulai dari indeks terkecil sampai terbesar.Sama dengan array satu dimensi,I dan J bertipe tertentu yang disebu tipe indeks (index tipe).Tipe indeks harus tipe yang mempunyai keterurutan (terdefinisi suksesor dan predesesornya),atau ordinal. I menyatakan jangkauan baris array dan J menyatakan jangkauan kolomnya.
Sebagai contoh,matriks matA,berikut mempunyai 2 baris dan 3 kolom dan tipe-basisnya adalah integer.
MatA=
MatA tersebut dapat disimpan dalam array dua dimensi yang didefinisikan sebagai :
Aturan umum pengajuan elemen array dua dimensi adalah :
Sebagai contoh,angka 3 matriks matA diatas diacu dengan matA[1,2] dan angka 8 diacu dengan matA[2,3],sehingga untuk keseluruhan angka dapat dituliskan sebagai berikut :
MatA=
Untuk memperjelas konsep dan penggunaan array dua dimensi,berikut diberikan contoh.
Contoh :
Buat program untuk mengisi matriks yang ditentukan jumlah baris dan kolomnya dan menampilkan kembali isi matriks yang telah diisi tersebut.
Jawab :
program isi_matriks;
var
MatA : array[1..100,1..100] of integer;
I,j : integer;
Bar,kol : integer;
begin
write(‘Banyak baris = ‘ );readln(bar);
write(‘Banyak kolom = ‘ );readln(kol);
writeln;
for i:=1 to bar do
begin
for j:=1 to kol do
begin
write(‘MatA[‘,I,’,’,j,’)] = ‘);
readln(MatA[i,j]);
end;
end.
writeln;
writeln(‘isi MatA:’);
for i:=1 to bar do
begin
for j:=1 to kol do
write(MatA(i,j]:3);
writeln;
end;
end.
Masukan/Keluaran
Banyak baris = 2
Banyak kolom = 3
MatA[1,1] = 2
MatA[1,2] = 3
MatA[1,3] = 5
MatA[2,1] = 7
MatA[2,2] = 1
MatA[2,3] = 8
Isi MatA :
2 3 5
7 1 8
2. FOR
Pernyataan For adalah kontruksi pengulangan tanpa kondisi,artinya intruksi-intruksi didalam badan pengulangan diulangi sejumlah kali yang di spesifikasikanoleh pemrogram.Dalam hal ini jumlah pengulangan sudah diketahui sebelum konstruksi pengulangan eksekusi.Perulangan dengan pernyataan for digunakan untuk mengulang pernyataan atau satu blok pernyataan berulang kali sejumlah yang ditentukan.Jumlah pengulangan diketahui atau dapat ditentukan sebelum eksekusi.Untuk mencacah beberapa kali pengulangan dilakukan,diperlukan sebuah peubah (variable) pencacah (counter).Peubah ini nilainya selalu bertambah satu setiap kali pengulangan di lakukan.Jika cacah pengulangan sudah mencapai jumlah yang dispesifikasi kan,maka proses pengulangan berhanti.
Pengulangan dengan pernyataan for dapat berbentuk perulangan positif,perulangan negative dan perulangan tersarang.
A. Perulangan Positif
Perulangan positif adalah perulangan dengan penghitung dari kecil ke besar atau pertambahan positif.Perulangan positif dapat dibentuk dengan dengan menggunakan FOR-TO-DO,dengan bentuk umum:
Contoh Perulangan Positif :
Contoh 1 .Mencetak “Saya sedang belajar for”sebanyak 5kali
Jawab :
Program cetak;
Uses wincrt;
Var
I:integer;
Begin
For I:=1 to 5 do writeln (‘sedang belajar for’);
End.
B.Perulangan Negatif
Perulangan negatife adalah perulangan dengan penghitung dari besar ke kecil atau pertambahan negatife.Perulangan negatife dapat dibentuk dengan menggunakan pernyataan For-DownTo-Do,dengan bentuk umum :
Contoh Perulangan Negatif :
Contoh 2 .Mencetak menurun angka 5 sampai dengan 1
Jawab :
Program mencetak_menurun;
Uses wincrt;
Var
I:integer;
Begin
For I:=5 downto 1 do
Begin
Writeln(I);
End;
End.
C.Perulangan Bersarang
Perulangan bersarang adalah perulangan yang berbeda dalam perulangan yang lainnya. Perulangan yang lebih dalam akan diproses terlebih dahulu sampai habis,kemudian perulangan yang lebih luar baru akan bertambah,mengerjakan perulangan yang lebih dalam lagi mulai dari nilai awalnya dan seterusnya.
Contoh Perulangan Bersarang :
Contoh 3. Mencetak Matrix:
1 1 1 2 1 3
2 1 2 2 2 3
3 1 3 2 3 3
4 1 4 2 4 3
5 1 5 2 5 3
Jawab :
Program cetak2;
Uses wincrt;
Var
I,J:=integer;
Begin
For I:=1 to 5 do
Begin
For J:=1 to 3 do
Begin
Write(I:8,J:3);
End;
Writeln;
End;
End.
3. REPEAT UNTIL
REPEAT..UNTIL berfungsi hamper sama dengan WHILE….DO. Pada REPEAT..UNTIL,looping akan berhenti justru ketika kondisi bernilai TRUE. Selain itu kondisi akan diuji pada akhir perulangan sehingga blok didalam perulangan akan dijalankan minimal satu kali walaupun kondisi yang ada masih FALSE. REPEAT-UNTIL digunakan untuk mengulang statement-statement atau blok statement sampai (until) kondisi yang diseleksi di Until tidak terpenuhi.
Perbedaannya,pengulangan Repeat-Until dengan While-Do terletak pada letak pengecekan kondisi.Jika pada pernyataan While-Do kondisi dicek pada awal blok pernyataan yang harus diulang. Perbedaan yang lain,bila pernyataan While mengulang pernyataan selama kondisi masih terpenuhi,pernyataan,pernyataan repeat..until mengulang pernyataan selama kondisi belum terpenuhi.
Bentuk umum pernyataan repeat..until adalah sebagai berikut :
Contoh 1:program mencetak ulangan ke-1 samapi ke-10
Uses wincrt;
Var
i:integer;
Begin
i:0;
Repeat
i:=i+1;
writeln (i);
until i=5;
end.
Contoh :
Buat program un
0 komentar:
Posting Komentar