larik - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/bab-i-larik.pdf ·...

25
LARIK {ARRAY} BAB I

Upload: nguyentuyen

Post on 25-Aug-2019

229 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Larik - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Bab-I-Larik.pdf · Array Satu Dimensi Adalah kumpulan elemen-elemen identik yang tersusun dalam satu baris

LARIK {ARRAY}

BAB I

Page 2: Larik - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Bab-I-Larik.pdf · Array Satu Dimensi Adalah kumpulan elemen-elemen identik yang tersusun dalam satu baris

DEFENISI

Adalah suatu struktur yang terdiri dari sejumlah elemen yang memiliki tipe data yang sama. Elemen-elemen array tersusun secara sekuensial dalam memori komputer.

Array dapat berupa satu dimensi, dua dimensi, tiga dimensi ataupun banyak dimensi

Page 3: Larik - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Bab-I-Larik.pdf · Array Satu Dimensi Adalah kumpulan elemen-elemen identik yang tersusun dalam satu baris

Array Satu Dimensi

Adalah kumpulan elemen-elemen identik yang tersusun dalam satu baris

Memiliki tipe data yang sama, tetapi isi dari elemen tersebut boleh berbeda

Contoh :

0 1 2 3 4 5 6 7 8

17 21 33 1 48 0 2

16

72

Page 4: Larik - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Bab-I-Larik.pdf · Array Satu Dimensi Adalah kumpulan elemen-elemen identik yang tersusun dalam satu baris

Bentuk Umum :

TipeData NamaArray [JumlahElemen] = {<inisialisai>} Contoh : Unsigned Int TinggiBadan [100] Bool Hadir [5] = { T, T, F, F, T } Jika inisialisasi kurang dari jumlah elemen array,

sisanya akan diinisialisasi dengan nol Elemen pertama array memiliki indeks 0

Page 5: Larik - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Bab-I-Larik.pdf · Array Satu Dimensi Adalah kumpulan elemen-elemen identik yang tersusun dalam satu baris

Contoh :

// Tinggi badan memiliki 100 elemen

Unsigned int TinggiBadan [100];

TinggiBadan [0] = 7 ; //Set elemen pertama

TinggiBadan [5] = 16; //Set elemen keenam

Temp = TinggiBadan [99];

//mengopi elemen terakhir ke variabel Temp

Endang Lestari

Page 6: Larik - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Bab-I-Larik.pdf · Array Satu Dimensi Adalah kumpulan elemen-elemen identik yang tersusun dalam satu baris

Contoh Algoritma : Deklarasi :

char Kal [3] ;

int i ;

Deskripsi :

Selama ( I = 0 ; i<3; i++ )

{

Kal [ i ] = new char [256] ;

cout <<“Masukkan kata ke-”

<< i+1 << “ : ” ;

cin >> kal [ i ];

};

selama (i = 0 ; I < 3 ; i++)

{

cout << “kata ke-” << i+1 << “ adalah “ << kal [ i ]

<< endl;

delete kal [ i ];

};

Kembali ke 0;

Endang Lestari

Page 7: Larik - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Bab-I-Larik.pdf · Array Satu Dimensi Adalah kumpulan elemen-elemen identik yang tersusun dalam satu baris

Contoh Program : # include <iostream> using namespace std; int main() { char * Kal[3]; int I; for (i=0; i<3; i++) { Kal[i] = new char[256]; cout <<“Masukkan kata ke-” << i+1 << “ : ” ; cin >> kal [i]; };

for (i=0 ; i<3 ; i++)

{

cout << “kata ke-” << i+1 << “

adalah “ << kal [i]

<< endl;

delete kal[ i ];

};

Return 0;

Endang Lestari

Page 8: Larik - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Bab-I-Larik.pdf · Array Satu Dimensi Adalah kumpulan elemen-elemen identik yang tersusun dalam satu baris

Array Dua Dimensi

Sering digambarkan sebagai sebuah matriks.

Terdiri dari beberapa baris dan beberapa kolom yang bertipe sama dan isinya boleh berbeda.

Contoh

0 1 2 3 4 5 6 7 8 9

0 10 2 32 54 84 1 2 65 5 4

1 21 45 45 5 8 3 61 65 53 45

2 13 95 25 23 1 96 2 52 36 66

3 31 33 12 54 1 3 25 65 21 9

4 66 22 46 87 52 23 89 16 57 0

5 49 36 87 97 2 68 4 66 35 1

Endang Lestari

Page 9: Larik - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Bab-I-Larik.pdf · Array Satu Dimensi Adalah kumpulan elemen-elemen identik yang tersusun dalam satu baris

Bentuk Umum :

TipeData NamaArray [JumlahBaris] [JumlahKolom] =

{ {<inisialisai>}, {<inisialisai>}, {<inisialisai>}, ….. {<inisialisai>} };

Endang Lestari

Page 10: Larik - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Bab-I-Larik.pdf · Array Satu Dimensi Adalah kumpulan elemen-elemen identik yang tersusun dalam satu baris

Contoh :

double matrix [4] [4] ;

bool papan [2] [2] = { {T, F}, {F, T}};

Pada array dimensi dua terdapat 2 jumlah elemen array yang terdapat didalam kurung siku dan keduanya boleh tidak sama

Indeks ditulis dengan tanda 2 kurung siku

Endang Lestari

Page 11: Larik - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Bab-I-Larik.pdf · Array Satu Dimensi Adalah kumpulan elemen-elemen identik yang tersusun dalam satu baris

Contoh Algoritma :

Deklarasi : int A[2][2]; int B[2][2]; int C[2][2]; int i,j ; Deskripsi : // input matriks A Selama (i=0; i<2; i++); { Selama (j=0; j<2; i++); { cout <<“A[”<< i+1<<“,” << j+1 << “ ] = ” ; cin >> A [i] [j]; } };

// input matriks B Selama (i=0; i<2; i++); { Selama (j=0; j<2; i++); { cout <<“B[”<< i+1<<“,” << j+1 << “ ] = ” ; cin >> B [i] [j]; } };

Endang Lestari

Page 12: Larik - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Bab-I-Larik.pdf · Array Satu Dimensi Adalah kumpulan elemen-elemen identik yang tersusun dalam satu baris

// Hitung matriks C

Selama (i=0; i<2; i++);

{

Selama (j=0; j<2; i++);

{

C [i] [j] = A[i] [j] + B [i] [j];;

};

};

cout << endl ;

cout << “ C = A + B ‘ << endl

cout << endl ;

// Tampilkan Hasil

Selama (i=0; i<2; i++);

{

Selama (j=0; j<2; i++);

{

cout <<“C[”<< i+1<<“,”

<< j+1 << “ ] = ” ;

cout >> C [i] [j];

}

};

Endang Lestari

Page 13: Larik - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Bab-I-Larik.pdf · Array Satu Dimensi Adalah kumpulan elemen-elemen identik yang tersusun dalam satu baris

Algoritma :

# include <iostream> using namespace std; Int main () { int A[2][2]; int B[2][2]; int C[2][2]; int i,j ; // input matriks A for (i=0; i<2; i++); { for (j=0; j<2; i++); { cout <<“A[”<< i+1<<“,” << j+1 << “ ] = ” ; cin >> A [i] [j]; } };

// input matriks B for (i=0; i<2; i++); { for (j=0; j<2; i++); { cout <<“B[”<< i+1<<“,” << j+1 << “ ] = ” ; cin >> B [i] [j]; } };

Endang Lestari

Page 14: Larik - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Bab-I-Larik.pdf · Array Satu Dimensi Adalah kumpulan elemen-elemen identik yang tersusun dalam satu baris

// Hitung matriks C

for (i=0; i<2; i++);

{

for (j=0; j<2; i++);

{

C [i] [j] = A[i] [j] + B [i] [j];;

};

};

cout << endl ;

cout << “ C = A + B ‘ << endl

cout << endl ;

// Tampilkan Hasil for (i=0; i<2; i++); { for (j=0; j<2; i++); { cout <<“C[”<< i+1<<“,” << j+1 << “ ] = ” ; cout >> C [i] [j]; } }; Return 0; };

Endang Lestari

Page 15: Larik - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Bab-I-Larik.pdf · Array Satu Dimensi Adalah kumpulan elemen-elemen identik yang tersusun dalam satu baris

output

A [1 , 1] = 1

A [1 , 2] = 2

A [2 , 1] = 3

A [2 , 2] = 4

B [1 , 1] = 5

B [1 , 2] = 6

B [2 , 1] = 7

B [2 , 2] = 8

C = A + B

C [1 , 1] = 6

C [1 , 1] = 8

C [1 , 1] = 10

C [1 , 1] = 12

1 2

3 4

5 6

7 8

6 8

10 11 + =

Endang Lestari

Page 16: Larik - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Bab-I-Larik.pdf · Array Satu Dimensi Adalah kumpulan elemen-elemen identik yang tersusun dalam satu baris

Array Tiga Dimensi

0 10 2 32 54 84 1 2 65 5 4

1 21 45 45 5 8 3 61 65 53 45

2 13 95 25 23 1 96 2 52 36 66

3 31 33 12 54 1 3 25 65 21 9

4 66 22 46 87 52 23 89 16 57 0

5 49 36 87 97 2 68 4 66 35 1

Array dimensi tiga dapat digambarkan sebagai sebuah

ruangan seperti berikut ini :

Endang Lestari

Page 17: Larik - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Bab-I-Larik.pdf · Array Satu Dimensi Adalah kumpulan elemen-elemen identik yang tersusun dalam satu baris

Bentuk Umum :

TipeData NamaArray [JumlahBaris] [JumlahKolom] [JumlahLebar]= { { {<inisialisai>}, ….. {<inisialisai>}, }, ….. { {<inisialisai>}, ….. {<inisialisai>} } };

Endang Lestari

Page 18: Larik - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Bab-I-Larik.pdf · Array Satu Dimensi Adalah kumpulan elemen-elemen identik yang tersusun dalam satu baris

Contoh :

int ruang [2][2][2] ={{{1,2},{3,4}},{{5,6},{7,8}}};

char huruf [5],[6],[7] ;

Tidak ada perbedaan antara array dimensi tiga dengan sebelumnnya, kecuali pada indeks array

Endang Lestari

Page 19: Larik - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Bab-I-Larik.pdf · Array Satu Dimensi Adalah kumpulan elemen-elemen identik yang tersusun dalam satu baris

Latihan :

1. Buat algoritma program untuk memasukan nilai float ke data[10]

2. Buat algoritma program untuk memasukan nilai karakter ke huruf[10]

3. Buat algoritma untuk menampilkan Z[2][3] = X[2][3] - Y[2][3]

4. Buat algoritma untuk menampilkan Z[2][2] = X[2][2] * Y[2][2]

5. Buat algoritma untuk menampilkan Z[3][1] = X[3][2] * Y[2][1]

Page 20: Larik - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Bab-I-Larik.pdf · Array Satu Dimensi Adalah kumpulan elemen-elemen identik yang tersusun dalam satu baris

Soal 4

Deklarasi : Int main () { int A[2][2]; int B[2][2]; int C[2][2]; int i,j ; Deskripsi // input matriks A for (i=0; i<2; i++); { for (j=0; j<2; i++); { cout <<“A[”<< i+1<<“,” << j+1 << “ ] = ” ; cin >> A [i] [j]; } };

// input matriks B for (i=0; i<2; i++); { for (j=0; j<2; i++); { cout <<“B[”<<i+1<<“,” << j+1 << “ ] = ” ; cin >> B [i] [j]; } };

Page 21: Larik - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Bab-I-Larik.pdf · Array Satu Dimensi Adalah kumpulan elemen-elemen identik yang tersusun dalam satu baris

for (i=0; i<2; i++); { for (j=0; j<2; j++); { for (k=0; k<2; k++); { C[i][j] = C[i][j] + A[i] [k] * B [k] [j]; }; }; };

Page 22: Larik - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Bab-I-Larik.pdf · Array Satu Dimensi Adalah kumpulan elemen-elemen identik yang tersusun dalam satu baris

Structure

Kumpulan elemen-elemen data yang digabung menjadi satu kesatuan.

Masing-masing elemen data tersebut dikenal dengan sebutan field

Field data dapat memiliki tipe data yang sama atau berbeda

Page 23: Larik - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Bab-I-Larik.pdf · Array Satu Dimensi Adalah kumpulan elemen-elemen identik yang tersusun dalam satu baris

Deklarasi

Bentuk Umum

Struct namastruct

{

Tipedata1 Field1;

Tipedata2 Field2;

Tipedatan Fieldn;

};

Contoh

Struct Mahasiswa

{

char NIM[10];

char Nama[20]

char Alamat[30]

float IPK;

};

Page 24: Larik - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Bab-I-Larik.pdf · Array Satu Dimensi Adalah kumpulan elemen-elemen identik yang tersusun dalam satu baris

Algoritma Deklarasi; Struct Mahasiswa { char NIM[10]; char Nama[20] char Alamat[30] float IPK; }; Deskripsi

int main () { Mahasiswa Mhs; cout <<“NIM : “; cin.getline(mhs.NIM. 10); cout <<“Nama : “; cin.getline(mhs.nama. 20); cout <<“Alamat : “;

cin.getline(mhs.alamat. 30); cout <<“IPK : “; cin >> (mhs.ipk ); cout << endl;

Cout << “ NIM Anda : “ << mhs.Nim << endl;

Cout << “ Nama Anda : “ << mhs.Nama << endl;

Cout << “ ALAMAT Anda : “ << mhs.aLAMAT << endl;

Cout << “ipk Anda : “ << mhs.iPK << endl;

Return 0;

Page 25: Larik - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/Bab-I-Larik.pdf · Array Satu Dimensi Adalah kumpulan elemen-elemen identik yang tersusun dalam satu baris

Soal :

1. Anda diminta untuk membuat program untuk mengambil dari file input data siswa/siswi suatu sekolah yang terdiri dari field nama, alamat, telepon, dan tanggal lahir.

2. Buat program untuk memasukan data karyawan suatu perusahaan yang terdiri dari field nama, gaji, status (menikah/belum/janda] jumlah anak.