Array ( Larik )

19
Array ( Larik ) Array ( Larik ) Oleh : Oman Somantri, S.Kom Email : [email protected] Array Satu Dimensi Array Dua Dimensi

description

Array ( Larik ). Array Satu Dimensi Array Dua Dimensi. Oleh : Oman Somantri, S.Kom Email : [email protected]. Array Satu Dimensi. Array adalah sekumpulan data yang bertipe sama, yang anggota-anggotanya dapat diakses berdasarkan nomor indeks. - PowerPoint PPT Presentation

Transcript of Array ( Larik )

Page 1: Array (  Larik  )

Array ( Larik )Array ( Larik )

Oleh : Oman Somantri, S.KomEmail : [email protected]

Array Satu DimensiArray Dua Dimensi

Page 2: Array (  Larik  )

Array Satu DimensiArray Satu Dimensi

Array adalah sekumpulan data yang bertipe sama, yang anggota-anggotanya dapat diakses berdasarkan nomor indeks.

Misalnya ada 26 huruf, kita sebut saja array Abjad, adalah sekumpulan 26 buah karakter yang berisi nama-nama abjad latin. Anggota pertama adalah ‘A’, anggota kedua adalah ‘B’ dan seterusnya hingga anggota ke 26 adalah ‘Z’.

Page 3: Array (  Larik  )

• Dalam notasi algoritma kita tuliskan : Abjad : array [1..26] of character

Pemberian nilainya bisa dilakukan dengan cara, pertama pengisian satu-satu berdasarkan nomor indeks :Abjad [1] ‘A’Abjad [2] ‘B’ dst sampai Abjad [26] ‘Z’

• Dalam notasi algoritma , indeks array dimulai dari 1, artinya jika kita punya array dengan 26 anggota, indeksnya mulai dari 1,2,3…sampai 26.

Page 4: Array (  Larik  )

• Berikut penulisan array dengan menggunakan turbo Pascal:

Abjad : array [1..26] of char;

Contoh pemberian nilai untuk array diatas dengan menggunakan bahasa Pascal adalah :Abjad [1] := ‘A’;Abjad [2] := ‘B’ dst sampai Abjad [26] := ‘Z’

Page 5: Array (  Larik  )

Program Nama_array;Uses winrt;Type nameType = String[50]; ageType = 0..150; { age range: from 0 to 150 }Var name : nameType; age : ageType;Begin Write('Enter your name: '); Readln(name); Write('Enter your age: '); Readln(age);

Writeln; Writeln('Your name:', name); Writeln('Your age :', age); Readln;End.

Contoh 1.1

Page 6: Array (  Larik  )

Program P002;uses wincrt;var abjad : array [1..50] of char; i,maks : integer;begin clrscr; write ('Masukan jumlah data karakter : '); readln(maks); for i:=1 to maks do begin write ('Masukan karakter ke ',i,' : '); readln(abjad[i]); end; write ('Karakter yang dinput : '); for i:=1 to maks do begin write (abjad[i],’ ‘); end; readln;end.

Contoh 1.2

Page 7: Array (  Larik  )

Program P003;uses wincrt;var angka:array [1..50] of integer; i,maks:integer;begin clrscr; write ('Masukan jumlah data : ');

readln(maks); for i:=1 to maks do

begin write ('Masukan angka ke ',i,' : '); readln(angka[i]); end;

write ('Angka yang dinput : '); for i:=1 to maks do begin write(angka[i]); end;

readln;end.

Contoh 1.3

Page 8: Array (  Larik  )

Program Contoh_Deklarasi_Array_Beragam; Uses winCrt;Var

NPM :array[1..20] of string[10];Nama :array[1..20] of string[25];Nilai : array[ 1. .20] of real;Umur : array[1 . .20] of byte;banyak,i : integer;

BeginClrScr;Write('Isi berapa data array yang diperlukan :');Readln(banyak); For i := 1 to banyak DoBegin

Write('NPM =');Readln(NPM[i]);Write('Nama =');readln(Nama[i]);Write('Nilai=');readln(Nilai[i]);Write('Umur =');readln(Umur[i]);

End;{cetak varibel array}Writeln('NPM NAMA NILAI UMUR ');For i:= 1 to banyak DoBegin

Writeln(Npm[i]:1 0,Nama[i] :25,Nilai[i] :3:2,' ',Umur[i] :3); End;Readln;

End.

Contoh 1.4

Page 9: Array (  Larik  )

Studi Kasus :

Buat sebuah program perhitungan nilai akhir 5 orang mahasiswa ?

Input : nama, tugas, quiz, uts, dan uas Proses : nilai = 10%*tugas + 20%*quiz + 30%*uts+ 40%*uas.

Output : nama, dan nilai ditampilan menurut index

Page 10: Array (  Larik  )

Program Studi_Kasus;Uses wincrt;Var Nama:array[1..5]of string; I,Tugas,Quiz,UTS,UAS:integer; Nilai:array[1..5]of real;Begin for I:=1 to 5 do begin Clrscr; write('Masukan Nama : ');readln(Nama[I]); write('Masukan Tugas : ');readln(Tugas); write('Masukan Quis : ');readln(Quiz); write('Masukan UTS : ');readln(UTS); write('Masukan UAS : ');readln(UAS); Nilai[I]:=0.1*Tugas+0.2*Quiz+0.3*UTS+0.4*UAS; end; Clrscr; for I:=1 to 5 do writeln('Nama : ',Nama[I],' mendapat nilai :',nilai[i] :5:2); readln;End.

Jawaban.

Page 11: Array (  Larik  )

Array Dua Dimensi

Di dalam pascal Array dapat berdimensi lebih dari satu yang disebut dengan array dimensi banyak (Multidimensional array).

Array 2 dimensi dapat mewakili suatu bentuk tabel atau matrik, yaitu indeks pertama menunjukkan baris dan indeks ke dua menunjukkan kolom dari tabel atau matrik.

Page 12: Array (  Larik  )

Let us have the 2 dimensional array defined first. Think of a grid where each box is located by using horizontal and vertical coordinates just in the example below:

1 2 3 4 5

2

3 3,4

4

5 5,3

An example of a 5 by 5 2D array illustrated on a grid

Contoh Bentuk Tampilan

Page 13: Array (  Larik  )

Varmy2DArray : Array[1..3][1..5] of Byte;Begin my2DArray[2][4] := 10;End.

1 2 3 4 5

2 10

3

Having the vertical axis as the 1st dimension and the horizontal one as the 2nd dimension, the above example is illustrated as follows:

Page 14: Array (  Larik  )

Program Deklarasi_Array_Dua_Dimensi;Uses Wincrt;Var

Tabel : Array [1..3, 1..2] of Integer;i,j : Integer;

BeginClrScr;Tabel [1,1] :=1;Tabel [1,2] :=2;Tabel [2,1] :=3; Tabel [2,2] :=4; Tabel [3,1] :=5; Tabel [3,2] :=6;

For I := 1 to 3 Do BeginFor J:= 1 to 2 Do

BeginWriteln ('Elemen ',i,',',j ,'= ',tabel [i,j] );

End;End;

End.

Contoh 2.1

Page 15: Array (  Larik  )

Program penjumlahan_matrik;Uses Wincrt;Var

Matrik1,Matrik2, Hasil : Array[1..3,1..2] of Integer;i,j : Integer;

BeginClrScr;{ input matrik ke satu }Writeln(' Elemen matrik satu');For i := 1 to 3 DoBegin

For j := 1 to 2 DoBegin

Write('Elemen baris -',i,' Kolom -',j,'= ');Readln(matrik1 [i,j]);

End;End;

Contoh 2.2

Page 16: Array (  Larik  )

{input matrik ke dua}Writeln('input elemen matrik dua');For i:= 1 to 3 DoBegin

For j:= 1 to 2 DoBegin

Write('Elemen baris -',i,' kolom -',j,'= ');Readln(matrik2 [i,j]);

End;End;

Contoh 2.2 cont…

Page 17: Array (  Larik  )

{proses penjumlahan tiap elemen}For i := 1 to 3 DoBegin

For j:= 1 to 2 DoBegin

Hasil[i,j] :=Matrik1 [i,j]+Matrik2[i,j];End;

End;

Contoh 2.2 cont…

Page 18: Array (  Larik  )

{proses cetak hasil}For i:= 1 to 3 DoBegin

For j:= 1 to 2 DoBegin

Write(Hasil[i,j] :6);End;Writeln;

End;Readln;

End.

Contoh 2.2 cont…

Page 19: Array (  Larik  )

SEKIAN