LOOPING PERCABANGAN DAN ARRAY Algoritma dan Struktur Data
LOOPING, PERCABANGAN DAN ARRAY Algoritma dan Struktur Data Marsel W. Aipassa, S. Kom.
Looping (Perulangan) Pengertian Looping ü Beberapa instruksi diulang untuk suatu jumlah pengulangan yang tertentu. ü Jumlah pengulangan dapat diketahui sebelumnya atau ditentukan dalam perjalanan program. Kegunaan Looping ü Meringkas algoritma (atau program) dengan mengotomatisasi perintah-perintah yang sama yang dikerjakan berulang-ulang. ü Struktur loop sangat efektif karena dapat menyingkat puluhan (bahkan mungkin ratusan hingga ribuan baris kode) menjadi beberapa baris perintah saja.
Jenis-jenis Loop dalam Bahasa C for Loop while Loop do while Loop
for Format for (inisialisasi; kondisi; increment/decrement){ statement; } printf(“It Contoh: printf(“It printf(“It printf(“It is is is fun!n”); fun!n”); fun!n”); for (n=0; n<10; n++) { printf(“It is fun!n”); }
while Format: while (boolean expression){ statement; } Contoh: int n = 0; while (n<10) { printf(“It is fun!n”); n++; }
do while Format: do { statement; } while (boolean expression); Contoh: do { printf(“It is fun!n”); } while (n<10);
Nested Loop /* Program Segitigaa */ #include <stdio. h> int n; void main(){ printf("n = "); scanf("%d", &n); printf("n"); for(int i=1; i<=n; i++) { for(int j=1; j<=i ; j++) { printf("*"); } printf("n"); } }
Percabangan Pernyataan yang dipakai untuk mengambil keputusan berdasarkan suatu kondisi. Bentuk pernyataan ini ada dua macam : if – else switch case
… Format if: if (kondisi) { pernyataan; } { if-else: if(kondisi) Format pernyataan 1; } else { pernyataan 2; } if(kondisi 1) { Pernyataan 1; } else if(kondisi 2) { Pernyataan 2; } else if(kondisi 3) { Pernyataan 3; } else { pernyataan 4; }
switch Switch(ungkapan) { case ungkapan 1: pernyataan 1; break; case ungkapan 2: pernyataan 2; break; . . . . default: pernyataan. Default }
Array • Sejauh ini program yang kita pelajari masih sangat terbatas, karena statement assignment hanya berupa pemberian satu nilai pada satu variabel • Padahal sering kali kita perlu untuk meng-assign ataupun memanipulasi banyak nilai ke sekelompok variabel • Sebagai contoh jika anda membuat program yang membaca 100 nilai percobaan untuk dihitung nilai rata -rata-nya, akan sangat lucu jika kita menghitungnya dengan cara berikut: rata_rata = (x 1 + x 2 + x 3 + x 4 + x 5 + + dst )/100.
… #include<stdio. h> void main() { int jumlah = 0; float rata 2 = 0; int angka 1; int angka 2; ………. angka 100; printf("Masukkan Angka 1 = "); scanf("%d", &angka 1); jumlah += angka 1; printf("Masukkan Angka 2 = "); scanf("%d", &angka 2); jumlah += angka 2; … rata 2 = jumlah/100; printf("Rata-rata = %4. 2 f", rata 2); }
Solusi == Menggunakan Array: adalah kumpulan data bertipe sama yang menggunakan nama sama. Dengan menggunakan array, sejumlah variabel dapat memakai nama yang sama. Antara satu variabel dengan variabel lain di dalam array dibedakan berdasarkan subscript/index. Sebuah subscript/index berupa bilangan di dalam kurung siku.
Macam-macam Array 1 Dimensi Array 2 Dimensi Array 3 Dimensi
Array 1 Dimensi Deklarasi Array (1 D, 2 D dan 3 D): – Tipe data elemen array – Nama array – Jumlah elemen array Deklarasi 1 Dimensi: tipe_data nama_larik[ukuran]; Contoh deklarasi Array 1 Dimensi: int val[ 5 ]; //declaration
Assignment pada Array 1 Dimensi Cara 1: int val[5]; val[0] = 5; val[1] = 10; val[2] = 15; val[3] = 20; val[4] = 25; Cara 2: int val[5] = {5, 10, 15, 20, 25};
Contoh • Contoh array integer 1 D bernama n yg memiliki 5 elemen, n[0] = 1, n[1] = 3, n[2] = 5, n[3] = 7, n[4] = 9 dideklarasikan sbb: – int n[5] = {1, 3, 5, 7, 9};
… Akses Indeks pada Array Perhatikan index-nya, jangan sampai terjadi Error karena akses index yang tidak ada.
… #include<stdio. h> void main() { int jumlah = 0; float rata 2 = 0; int angka[5]; for(int i=0; i<5; i++){ printf("Masukkan Angka ke %d = ", i); scanf("%d", &angka[i]); jumlah = jumlah + angka[i]; -> jumlah += angka[i]; } rata 2 = jumlah/5; printf("Rata-rata = %4. 2 f", rata 2); }
Array 2 Dimensi Merupakan array yang terdiri dari m buah baris dan n buah kolom. Bentuknya dalam matriks atau tabel. Deklarasi Array 2 Dimensi: Tipe. Data Nama_array[subscript_baris][ subscript_kolom]
Contoh int X[3][4];
Akses Array 2 Dimensi Misal ingin mengisi elemen array baris 2 kolom 3 dengan nilai 10, maka perintahnya: X[1][2] = 10;
… for ( baris=1 ; baris<=3 ; baris++) { for ( kolom=1 ; kolom<=3 ; kolom++) { printf("t. Masukan matrik elemen [%d, %d] = ", baris, kolom); scanf("%d", &matrik[baris][kolom]); } }
… Output:
… Menampilkan Isi Array 2 Dimensi: for ( baris=1 ; baris<=3 ; baris++) { for ( kolom=1 ; kolom<=3 ; kolom++) { printf("t. Matrik elemen [%d, %d] = %d", baris, kolom, matrik[baris][kolom]); } printf("n"); }
… Hasil:
Dalam bentuk tabel: printf("t. Matrik yant telah diinput adalah : n"); for ( baris=1 ; baris<=3 ; baris++) { for ( kolom=1 ; kolom<=3 ; kolom++) { printf("t%d", matrik[baris][kolom]); } printf("n"); }
… Output:
Tugas Take Home Buatlah program menggunakan Bahasa C untuk menghitung perkalian dan penjumlahan matriks 2 x 2. User harus menginputkan elemen matriks-nya. Tugas individu. Kumpulkan softcopy yang berisi kode program, printscreen output dan penjelasan kode programnya. Kirim ke email: acelox@ymail. com Subject: ASD_L_MATRIKS_NIMLENGKAP Nama File: MATRIKS_NIMLENGKAP. pdf Paling lambat Rabu, 28 Januari 2010 pukul 22. 00 WIB. Terlambat tidak akan dinilai.
- Slides: 32