190 likes | 325 Views
TE E 2 103 Algoritma dan Pemrograman. Array. Dosen: Abdillah, MIT Hp : 0853 6581 8665 Email: abdill 01 @ gmail.com Website: www. abdill01.wordpress.com. Tujuan. Mahasiswa mampu menggunakan array dalam runtunan program C. Kapan Menggunakan Array ?.
E N D
TEE 2103Algoritma dan Pemrograman Array Dosen: Abdillah, MIT Hp: 0853 6581 8665 Email: abdill01@gmail.com Website: www.abdill01.wordpress.com
Tujuan Mahasiswa mampu menggunakan array dalam runtunan program C.
Kapan Menggunakan Array? • Array digunakan jika kita memiliki sejumlah data yang bertipe sama dan kita perlu menyimpan sementara data itu untuk selanjutnya data itu dimanipulasi. • Selama pelaksanaan program, array tetap menyimpan nilai-nilai. • Dengan menggunakan array kita dapat menghindari penggunaan nama variabel yang banyak.
Pemrosesan Array Pemrosesan pada array adalah pemrosesan beruntun yang dimulai dari elemen pertama array, berturut-turut pada elemen berikutnya, sampai elemen terakhir dicapai, yaitu elemen dengan indeks terbesar.
Inisialisasi Array • Inisialisasi array adalah memberikan nilai awal untuk seluruh/sebagian elemen array. • Untuk array bertipe integer, inisialisasi berupa pengisian elemen array dengan nol atau nilai lainnya. • Sedangkan pada array karakter, inisialisasi berupa pengisian elemen array dengan spasi atau karakter kosong (null).
Array dan Argumen Fungsi • Array dapat digunakan sebagai argumen fungsi. • Contoh berikut adalah algoritma dan program C yang membacaN buah data integer dari papan ketik,menyimpannya dalam sebuah array, danmenentukan bilangan terbesar dari N buah data integertsb. Nilai N ditentukan maksimum 20.
Algoritma Cari_Maximum PROGRAMCari_Maximum {Menentukan bilangan terbesar dari N buah data integer} DEKLARASI N = 20, bil[N], nmax, jml, i : integer function Max (inputX[ ],k : integer) → integer ALGORITMA: read (jml) for i 0 to jml do read ( bil[i] ) endfor nmax Max(bil,jml) write (nmax)
Algoritma Fungsi Max function Max (inputX[ ],k : integer) → integer { Mengembalikan nilai maximum } DEKLARASI maximum : integer ALGORITMA: maximum ← X[0] for i 1 to k do if X[i] > maximum then maximum← X[i] endif endfor return (maximum)
Program Cari_Maximum #include <stdio.h> #define N 20 int Max(int X[],int k); inti; main() { int jml,nmax, bil[N]; printf(“Masukkan jumlahbilangan (maks 20) : "); scanf("%d",&jml); for (i=0;i<jml;i++) { printf("Bilanganke %d : ",i+1); scanf("%d",&bil[i]); } nmax = Max(bil,jml); printf("Nilai maximum adalah : %d", nmax); }
Program Fungsi Max int Max(int X[],int k) { int maximum = X[0]; for (i=1;i<k;i++) { if (X[i] > maximum) maximum = X[i]; } return maximum; }
Bubble Sort • Adabanyakmetodapengurutan array, namunsalahsatumetode yang populeradalah Bubble Sort. • Jumlahtahappengurutan = jumlahbilangan – 1 • Banyaknyaperbandinganpadasetiaptahap = jumlahbilangan – nomortahap • MisalnyaAndamemilikiempatbuahangka: 10-5-7-3 yang akandiurutkandari yang terkecilhingga yang terbesar (ascending). Metode Bubble Sort akanmembagiprosespengurutanmenjaditigatahap
#include <stdio.h> #define N 20 inti,j,A[N]; void bubble(int n); main() { intjml; printf("Masukkanjumlahbilangan (maks 20) : "); scanf("%d",&jml); printf("\n"); for (i=0;i<jml;i++) { printf("Bilanganke %d : ",i+1); scanf("%d",&A[i]); } printf("\n"); bubble(jml); printf("Data yang sudahterurut : \n"); for (i=0;i<jml;i++) printf("%d\n",A[i]); }
void bubble(int n) { int temp; for (i=1;i<=n-1;i++) { for (j=i;j<n;j++) { if (A[i-1]>A[j]) { temp = A[i-1]; A[i-1] = A[j]; A[j] = temp; } } } }