Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Algoritma dan Struktur Data

Presentasi serupa


Presentasi berjudul: "Algoritma dan Struktur Data"— Transcript presentasi:

1 Algoritma dan Struktur Data
ARRAY (bag.1) Algoritma dan Struktur Data Muhammad Fachrie, S.T. 3/24/2012

2 Definisi 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 Muhammad Fachrie, S.T. 3/24/2012

3 Ilustrasi Array 1 Dimensi
Array ANEH 21 -9 12 54 1 -23 42 71 2 3 4 5 6 7 8 9 10 Indeks array ANEH[1]: 21 ANEH[2]: -9 ANEH[8]: -23 Muhammad Fachrie, S.T. 3/24/2012

4 Deklarasi Array dalam Notasi Algoritmik
<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 Muhammad Fachrie, S.T. 3/24/2012

5 Contoh Penggunaan Array
lucu : array [1..4] of integer Lalu, untuk setiap indeks array, dimasukkan bilangan integer: aneh[1] = 3 aneh[2] = 12 aneh[3] = 0 aneh[4] = -9 1 2 3 4 Terbentuk sebuah array dengan indeks dari 1 s.d. 4 3 12 -9 1 2 4 Muhammad Fachrie, S.T. 3/24/2012

6 Penomoran indeks pada Bahasa C
Pada notasi algoritmik, penomoran indeks array dimulai dari 1. Contoh: Sedangkan pada Bahasa C, penomoran indeks array dimulai dari 0. A n d i 1 2 3 4 5 A n d i 1 2 3 4 Muhammad Fachrie, S.T. 3/24/2012

7 String = Array, dalam Bahasa C
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] : “ “ Muhammad Fachrie, S.T. 3/24/2012

8 A n d i 1 2 3 4 nama nama[0] nama[1] nama[2] nama[3] nama[4]

9 Contoh Algoritma menggunakan Array Integer
/*Algoritma menyimpan 4 buah angka ke dalam array*/ /*KAMUS*/ angka : array [1..4] of integer /*ALGORITMA*/ //menerima input dari user input(angka[1]); input(angka[2]); input(angka[3]); input(angka[4]); //menampilkan isi dari array output(angka[1]); Muhammad Fachrie, S.T. 3/24/2012

10 Implementasi dengan Bahasa C
/*Program menyimpan 4 buah bilangan dalam array*/ #include <stdio.h> #include <conio.h> void main() { //deklarasi variabel int angka[10]; //menerima input array dari user printf("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 array printf(“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(); } Muhammad Fachrie, S.T. 3/24/2012

11 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 array output(nama[1]); output(nama[2]); output(nama[3]); output(nama[4]); output(nama[5]); Muhammad Fachrie, S.T. 3/24/2012

12 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(); } Muhammad Fachrie, S.T. 3/24/2012

13 Bagaimana cara mengisi array yang jumlah indeksnya sangat banyak?
Muhammad Fachrie, S.T. 3/24/2012

14 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]); Muhammad Fachrie, S.T. 3/24/2012

15 TIDAK EFISIEN! Gunakan Struktur Pengulangan!
Muhammad Fachrie, S.T. 3/24/2012

16 Mengolah Array dengan Jumlah Indeks yang Sangat Banyak
/*Algoritma menyimpan 100 buah angka ke dalam array*/ /*KAMUS*/ angka : array [1..100] of integer idx : integer /*ALGORITMA*/ //menerima input dari user idx traversal [1..100] input(angka[idx]); //menampilkan isi array ke monitor Idx traversal [1..100] output(angka[idx]); Muhammad Fachrie, S.T. 3/24/2012

17 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 user for (idx=0; idx<= 99; idx++) printf(“angka ke-%d : ”,idx); scanf(“%d”,&angka[idx]); } //menampilkan isi array ke monitor for (idx=0; idx<=199; idx++) printf(“angka ke-%d : %d\n”,idx,angka[idx]); getch(); Muhammad Fachrie, S.T. 3/24/2012

18 Latihan Buatlah sebuah program yang mengandung array dengan ketentuan berikut: Panjang indeks array = 10 Tipe array = integer Kemudian, 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: 11 23 17 20 9 16 42 13 37 10 11 23 17 9 13 37 Muhammad Fachrie, S.T. 3/24/2012

19 PIKIRKAN! KERJAKAN! PASTI BISA!
Muhammad Fachrie, S.T. 3/24/2012

20 Logika Berpikirnya Masukkan dahulu semua angka ke dalam array
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) Tampilkan kembali array yang telah dimodifikasi Muhammad Fachrie, S.T. 3/24/2012

21 11 23 17 20 9 16 42 13 37 10 Habis dibagi 2 Habis dibagi 2 Habis dibagi 2 11 23 17 9 13 37 Muhammad Fachrie, S.T. 3/24/2012


Download ppt "Algoritma dan Struktur Data"

Presentasi serupa


Iklan oleh Google