ARRAY - E-Learning | Universitas AMIKOM...
Transcript of ARRAY - E-Learning | Universitas AMIKOM...
![Page 1: ARRAY - E-Learning | Universitas AMIKOM Yogyakartaelearning.amikom.ac.id/.../2012/03/20120324_03-Array.ppt · PPT file · Web view... memakai nama dan tipe yang sama, serta setiap](https://reader031.fdocument.pub/reader031/viewer/2022021423/5ae38ee97f8b9a595d8e9495/html5/thumbnails/1.jpg)
ARRAY (bag.1)
Algoritma dan Struktur Data
3/24/2012Muhammad Fachrie, S.T. 1
![Page 2: ARRAY - E-Learning | Universitas AMIKOM Yogyakartaelearning.amikom.ac.id/.../2012/03/20120324_03-Array.ppt · PPT file · Web view... memakai nama dan tipe yang sama, serta setiap](https://reader031.fdocument.pub/reader031/viewer/2022021423/5ae38ee97f8b9a595d8e9495/html5/thumbnails/2.jpg)
Array (larik) merupakan koleksi data, dimana setiap elemen memakai nama dan tipe yang sama, serta setiap elemen diakses dengan membedakan indeks array-nya.
Jenis-jenis array: Array 1 dimensi Array 2 dimensi Array 3 dimensi
Definisi
3/24/2012Muhammad Fachrie, S.T. 2
![Page 3: ARRAY - E-Learning | Universitas AMIKOM Yogyakartaelearning.amikom.ac.id/.../2012/03/20120324_03-Array.ppt · PPT file · Web view... memakai nama dan tipe yang sama, serta setiap](https://reader031.fdocument.pub/reader031/viewer/2022021423/5ae38ee97f8b9a595d8e9495/html5/thumbnails/3.jpg)
ANEH[1]: 21 ANEH[2]: -9 ANEH[8]: -23
Ilustrasi Array 1 Dimensi
21 -9 0 1
254
12 1
-23
42
71
1 2 3 4 5 6 7 8 9 10
Array ANEH
Indeks array
3/24/2012Muhammad Fachrie, S.T. 3
![Page 4: ARRAY - E-Learning | Universitas AMIKOM Yogyakartaelearning.amikom.ac.id/.../2012/03/20120324_03-Array.ppt · PPT file · Web view... memakai nama dan tipe yang sama, serta setiap](https://reader031.fdocument.pub/reader031/viewer/2022021423/5ae38ee97f8b9a595d8e9495/html5/thumbnails/4.jpg)
<nama variabel> : array [a..b] of <tipe data> dimana, a: nilai awal indeks array
b: nilai akhir indeks array Contoh:BilPrima : array [1..10] of integer
Deklarasi Array dalam Notasi Algoritmik
3/24/2012Muhammad Fachrie, S.T. 4
![Page 5: ARRAY - E-Learning | Universitas AMIKOM Yogyakartaelearning.amikom.ac.id/.../2012/03/20120324_03-Array.ppt · PPT file · Web view... memakai nama dan tipe yang sama, serta setiap](https://reader031.fdocument.pub/reader031/viewer/2022021423/5ae38ee97f8b9a595d8e9495/html5/thumbnails/5.jpg)
lucu : array [1..4] of integer
Lalu, untuk setiap indeks array, dimasukkan bilangan integer:aneh[1] = 3aneh[2] = 12aneh[3] = 0aneh[4] = -9
Contoh Penggunaan Array
1 2 3 4
Terbentuk sebuah array dengan indeks dari 1 s.d. 4
3 12 0 -9
1 2 3 4
3/24/2012Muhammad Fachrie, S.T. 5
![Page 6: ARRAY - E-Learning | Universitas AMIKOM Yogyakartaelearning.amikom.ac.id/.../2012/03/20120324_03-Array.ppt · PPT file · Web view... memakai nama dan tipe yang sama, serta setiap](https://reader031.fdocument.pub/reader031/viewer/2022021423/5ae38ee97f8b9a595d8e9495/html5/thumbnails/6.jpg)
Pada notasi algoritmik, penomoran indeks array dimulai dari 1. Contoh:
Sedangkan pada Bahasa C, penomoran indeks array dimulai dari 0.Contoh:
Penomoran indeks pada Bahasa C
A n d i1 2 3 4 5
A n d i0 1 2 3 4
3/24/2012Muhammad Fachrie, S.T. 6
![Page 7: ARRAY - E-Learning | Universitas AMIKOM Yogyakartaelearning.amikom.ac.id/.../2012/03/20120324_03-Array.ppt · PPT file · Web view... memakai nama dan tipe yang sama, serta setiap](https://reader031.fdocument.pub/reader031/viewer/2022021423/5ae38ee97f8b9a595d8e9495/html5/thumbnails/7.jpg)
Di dalam Bahasa C, tipe data string merupakan sebuah array, dimana elemennya terdiri dari sebuah karakter penyusun string tersebut.
Contoh:char nama[5];strcpy(nama,”Andi”);
Maka, elemen array dari variabel nama adalah:nama[0] : “A”nama[1] : “n”nama[2] : “d”nama[3] : “i”nama[4] : “ “
String = Array, dalam Bahasa C
3/24/2012Muhammad Fachrie, S.T. 7
![Page 8: ARRAY - E-Learning | Universitas AMIKOM Yogyakartaelearning.amikom.ac.id/.../2012/03/20120324_03-Array.ppt · PPT file · Web view... memakai nama dan tipe yang sama, serta setiap](https://reader031.fdocument.pub/reader031/viewer/2022021423/5ae38ee97f8b9a595d8e9495/html5/thumbnails/8.jpg)
A n d i0 1 2 3 4
nama
nama[0]
nama[1]
nama[2]
nama[3]
nama[4]
![Page 9: ARRAY - E-Learning | Universitas AMIKOM Yogyakartaelearning.amikom.ac.id/.../2012/03/20120324_03-Array.ppt · PPT file · Web view... memakai nama dan tipe yang sama, serta setiap](https://reader031.fdocument.pub/reader031/viewer/2022021423/5ae38ee97f8b9a595d8e9495/html5/thumbnails/9.jpg)
/*Algoritma menyimpan 4 buah angka ke dalam array*//*KAMUS*/angka : array [1..4] of integer
/*ALGORITMA*///menerima input dari userinput(angka[1]);input(angka[2]);input(angka[3]);input(angka[4]);
//menampilkan isi dari arrayoutput(angka[1]);output(angka[1]);output(angka[1]);output(angka[1]);
Contoh Algoritma menggunakan Array Integer
3/24/2012Muhammad Fachrie, S.T. 9
![Page 10: ARRAY - E-Learning | Universitas AMIKOM Yogyakartaelearning.amikom.ac.id/.../2012/03/20120324_03-Array.ppt · PPT file · Web view... memakai nama dan tipe yang sama, serta setiap](https://reader031.fdocument.pub/reader031/viewer/2022021423/5ae38ee97f8b9a595d8e9495/html5/thumbnails/10.jpg)
/*Program menyimpan 4 buah bilangan dalam array*/#include <stdio.h>#include <conio.h>
void main(){
//deklarasi variabelint angka[10];
//menerima input array dari userprintf("angka ke-1: "); scanf("%d",&angka[0]);printf("angka ke-2: "); scanf("%d",&angka[1]);printf("angka ke-3: "); scanf("%d",&angka[2]);printf("angka ke-4: "); scanf("%d",&angka[3]);
//menampilkan isi arrayprintf(“angka ke-1: %d”, angka[0]);printf(“angka ke-2: %d”, angka[1]);printf(“angka ke-3: %d”, angka[2]);printf(“angka ke-4: %d”, angka[3]);getch();
}
Implementasi dengan Bahasa C
3/24/2012Muhammad Fachrie, S.T. 10
![Page 11: ARRAY - E-Learning | Universitas AMIKOM Yogyakartaelearning.amikom.ac.id/.../2012/03/20120324_03-Array.ppt · PPT file · Web view... memakai nama dan tipe yang sama, serta setiap](https://reader031.fdocument.pub/reader031/viewer/2022021423/5ae38ee97f8b9a595d8e9495/html5/thumbnails/11.jpg)
Contoh Algoritma menggunakan Array String
/*Algoritma menampilkan elemen karakter dari sebuah String*//*KAMUS*/nama : array [1..5] of char
/*ALGORITMA*/Nama = “Andi”
//menampilkan isi dari arrayoutput(nama[1]);output(nama[2]);output(nama[3]);output(nama[4]);output(nama[5]);
3/24/2012Muhammad Fachrie, S.T. 11
![Page 12: ARRAY - E-Learning | Universitas AMIKOM Yogyakartaelearning.amikom.ac.id/.../2012/03/20120324_03-Array.ppt · PPT file · Web view... memakai nama dan tipe yang sama, serta setiap](https://reader031.fdocument.pub/reader031/viewer/2022021423/5ae38ee97f8b9a595d8e9495/html5/thumbnails/12.jpg)
Implementasi dengan Bahasa C/*Program untuk menampilkan elemen dari sebuah string*/#include <stdio.h>#include <conio.h>
void main(){
char nama[5];
strcpy(nama,"Andi");printf("karakter ke-1: %c \n",nama[0]);printf("karakter ke-2: %c \n",nama[1]);printf("karakter ke-3: %c \n",nama[2]);printf("karakter ke-4: %c \n",nama[3]);printf("karakter ke-5: %c \n",nama[4]);
getch();}
3/24/2012Muhammad Fachrie, S.T. 12
![Page 13: ARRAY - E-Learning | Universitas AMIKOM Yogyakartaelearning.amikom.ac.id/.../2012/03/20120324_03-Array.ppt · PPT file · Web view... memakai nama dan tipe yang sama, serta setiap](https://reader031.fdocument.pub/reader031/viewer/2022021423/5ae38ee97f8b9a595d8e9495/html5/thumbnails/13.jpg)
Bagaimana cara mengisi array yang jumlah indeksnya sangat
banyak?
3/24/2012Muhammad Fachrie, S.T. 13
![Page 14: ARRAY - E-Learning | Universitas AMIKOM Yogyakartaelearning.amikom.ac.id/.../2012/03/20120324_03-Array.ppt · PPT file · Web view... memakai nama dan tipe yang sama, serta setiap](https://reader031.fdocument.pub/reader031/viewer/2022021423/5ae38ee97f8b9a595d8e9495/html5/thumbnails/14.jpg)
Apakah seperti ini algoritmanya?angka : array [1..100] of integer
/*ALGORITMA*/input(angka[1]);input(angka[2]);input(angka[3]);input(angka[4]);input(angka[5]);input(angka[6]);input(angka[7]);input(angka[8]);input(angka[9]);input(angka[10]);input(angka[11]);input(angka[12]);input(angka[13]);input(angka[14]);input(angka[15]);input(angka[16]);input(angka[17]);
…
input(angka[100]);
3/24/2012Muhammad Fachrie, S.T. 14
![Page 15: ARRAY - E-Learning | Universitas AMIKOM Yogyakartaelearning.amikom.ac.id/.../2012/03/20120324_03-Array.ppt · PPT file · Web view... memakai nama dan tipe yang sama, serta setiap](https://reader031.fdocument.pub/reader031/viewer/2022021423/5ae38ee97f8b9a595d8e9495/html5/thumbnails/15.jpg)
TIDAK EFISIEN!Gunakan Struktur
Pengulangan!
3/24/2012Muhammad Fachrie, S.T. 15
![Page 16: ARRAY - E-Learning | Universitas AMIKOM Yogyakartaelearning.amikom.ac.id/.../2012/03/20120324_03-Array.ppt · PPT file · Web view... memakai nama dan tipe yang sama, serta setiap](https://reader031.fdocument.pub/reader031/viewer/2022021423/5ae38ee97f8b9a595d8e9495/html5/thumbnails/16.jpg)
Mengolah Array dengan Jumlah Indeks yang Sangat Banyak
/*Algoritma menyimpan 100 buah angka ke dalam array*//*KAMUS*/angka : array [1..100] of integeridx : integer
/*ALGORITMA*///menerima input dari useridx traversal [1..100]
input(angka[idx]);
//menampilkan isi array ke monitorIdx traversal [1..100]
output(angka[idx]);
3/24/2012Muhammad Fachrie, S.T. 16
![Page 17: ARRAY - E-Learning | Universitas AMIKOM Yogyakartaelearning.amikom.ac.id/.../2012/03/20120324_03-Array.ppt · PPT file · Web view... memakai nama dan tipe yang sama, serta setiap](https://reader031.fdocument.pub/reader031/viewer/2022021423/5ae38ee97f8b9a595d8e9495/html5/thumbnails/17.jpg)
Implementasi dalam Bahasa C/*Program menyimpan 100 buah angka ke dalam array*/#include <stdio.h>#include <conio.h>
void main(){
int angka[100], idx;
//menerima input dari userfor (idx=0; idx<= 99; idx++){
printf(“angka ke-%d : ”,idx);scanf(“%d”,&angka[idx]);
}
//menampilkan isi array ke monitorfor (idx=0; idx<=199; idx++)
printf(“angka ke-%d : %d\n”,idx,angka[idx]);
getch();}
3/24/2012Muhammad Fachrie, S.T. 17
![Page 18: ARRAY - E-Learning | Universitas AMIKOM Yogyakartaelearning.amikom.ac.id/.../2012/03/20120324_03-Array.ppt · PPT file · Web view... memakai nama dan tipe yang sama, serta setiap](https://reader031.fdocument.pub/reader031/viewer/2022021423/5ae38ee97f8b9a595d8e9495/html5/thumbnails/18.jpg)
Buatlah sebuah program yang mengandung array dengan ketentuan berikut:1. Panjang indeks array = 102. Tipe array = integerKemudian, isilah array tersebut secara berturut-turut
dengan angka: 11, 23, 17, 20, 9, 16, 42, 13, 37, 10.Lalu, lakukanlah modifikasi pada array tersebut
dengan ketentuan semua angka genap diganti dengan nol (0).
Contoh:INPUT:
OUTPUT:
Latihan
11 23 17 20 9 16 42 13 37 10
11 23 17 0 9 0 0 13 37 03/24/2012Muhammad Fachrie, S.T. 18
![Page 19: ARRAY - E-Learning | Universitas AMIKOM Yogyakartaelearning.amikom.ac.id/.../2012/03/20120324_03-Array.ppt · PPT file · Web view... memakai nama dan tipe yang sama, serta setiap](https://reader031.fdocument.pub/reader031/viewer/2022021423/5ae38ee97f8b9a595d8e9495/html5/thumbnails/19.jpg)
PIKIRKAN!KERJAKAN!
PASTI BISA!
3/24/2012Muhammad Fachrie, S.T. 19
![Page 20: ARRAY - E-Learning | Universitas AMIKOM Yogyakartaelearning.amikom.ac.id/.../2012/03/20120324_03-Array.ppt · PPT file · Web view... memakai nama dan tipe yang sama, serta setiap](https://reader031.fdocument.pub/reader031/viewer/2022021423/5ae38ee97f8b9a595d8e9495/html5/thumbnails/20.jpg)
1. Masukkan dahulu semua angka ke dalam array
2. Buat perulangan dari sebanyak jumlah indeks array Cek satu angka pada sebuah indeks array Jika angka tersebut habis dibagi 2, maka ganti
angka tersebut dengan nol (0)3. Tampilkan kembali array yang telah
dimodifikasi3/24/2012Muhammad Fachrie, S.T. 20
Logika Berpikirnya
![Page 21: ARRAY - E-Learning | Universitas AMIKOM Yogyakartaelearning.amikom.ac.id/.../2012/03/20120324_03-Array.ppt · PPT file · Web view... memakai nama dan tipe yang sama, serta setiap](https://reader031.fdocument.pub/reader031/viewer/2022021423/5ae38ee97f8b9a595d8e9495/html5/thumbnails/21.jpg)
3/24/2012Muhammad Fachrie, S.T. 21
11 23 17 20 9 16 42 13 37 10
11 23 17 0 9 0 0 13 37 0
Habis dibagi 2 Habis dibagi 2 Habis dibagi 2