Praktikum : Pemrograman I Modul Praktikum ke : 04 Judul Materi : Array Tujuan / Sasaran : Mahasiswa dapat membuat mempraktekkan perintah Array/ Matriks Waktu (lama) : 3 Jam Aplikasi yang digunakan : Blue-J, Forte, Net-Beans I. Array / Matriks Array/Larik adalah suatu tipe data terstruktur (structures data type) yang terdapat dalam memori yang terdiri dari sejumlah elemen (tempat) yang mempunyai tipe data yang sama dan merupakan gabungan dari beberapa variabel sejenis serta memiliki jumlah komponen yang jumlahnya tetap. Array/larik juga disebut struktur yang dapat diakses secara acak (randomaccess structure) karena semua elemen array dapat diacu secara acak dengan aturan tertentu, yaitu dengan mengetahui nomor urutnya yang disebut indeks (index). Elemen-elemen dari array/larik tersusun secara sequential dalam memori komputer. Array/larik dapat berupa : - satu dimensi - dua dimensi - banyak dimensi. 1.1. Array/Larik 1 dimensi (one-dimensional array) : Array/larik satu dimensi adalah kumpulan elemen-elemen yang identik, yang tersusun dalam satu baris. Elemen-elemen tersebut memiliki tipe data yang sama, tetapi isi dari elemen tersebut boleh berbeda. Array/larik satu dimensi, kadangkadang disebut array/larik dimensi biasa atau vektor karena hanya mempunyai satu arah. Array/larik satu dimensi biasanya diilustrasikan dengan gambar sebagai berikut : Dalam bahasa Java array dapat dideklarasikan dan didefinisikan sebagai berikut : Mendeklarasikan Array ; int [ ] A; / int A [ ]; Hanya menyatakan A sebagai Array, tetapi belum menyiapkan elemenelemennya atau tanpa menyebutkan berapa jumlah elemen yang diperlukan. Mendefinisikan Array ; A = new int [9]; Sebagai kelanjutan deklarasi Array dengan menyiapkan 9 elemen. Mendeklarasikan sekaligus mendefinisikan Array, sebagai gabungan dua cara diatas ; int [ ] A = new int [9] Merupakan deklarasi variabel array dengan menyebutkan jumlah elemen yang diperlukan. Mendeklarasikan variabel array secara otomatis; int [ ] A={61,66,22,1} Tidak menyebutkan jumlah elemen secara tegas, tetapi mendefinisikan sejumlah data secara terurut. Pemrograman I Hal : 21
Contoh : int [ ] angka = new int [61]; 1.2. Array/Larik 2 dimensi (one-dimensional array) : Array/larik dua dimensi yang sering digambarkan sebagai sebuah matriks adalah merupakan perluasan dari sebuah array satu dimensi. Jika pada array satu dimensi hanya terdiri dari sebuah baris dengan beberpa kolom elemen maka pada array dua dimensi terdiri dari beberapa baris dan beberapa kolom elemen yang bertipe sama. Array/larik dua dimensi biasanya diilustrasikan dengan gambar sebagai berikut : Bentuk Umum pendeklarasian variabel array dua dimensi di Java adalah : typedata [ ] [ ] nama_variabel [=new tipedata [jumlah_baris] [jumlah_kolom]]; Contoh : int [ ] [ ] angka = new int [4] [3]; 1.3. Array/Larik banyak dimensi (multi-dimensional array) : Array/larik tiga dimensi dan banyak dimensi dapat digambarkan sebagai suatu benda ruang. Array/larik tiga dimensi biasanya diilustrasikan dengan gambar sebagai berikut : Pemrograman I Hal : 22
Bentuk Umum pendeklarasian variabel array multi dimensi di Java adalah : typedata [ ] [ ] <NamaArray> = new typedata [jumlah_baris] [jumlah_kolom]; Contoh : Array Segitiga Array Segiempat int [ ] [ ] nilai = new int [5] [ ]; int [ ] [ ] MatA = new int [jmlbaris] [jmlkolom ]; int [ ] [ ] MatB = new int [jmlbaris] [jmlkolom ]; int [ ] [ ] MatC = new int [jmlbaris] [jmlkolom ]; II. Soal praktikum / latihan Buat Programnya dengan nama Project Praktikum04, dimana setiap soal menggunakan 2 versi jawaban 1. Buatlah matrik dengan ordo 4 x 5, Output dan isi data adalah sebagai berikut (nama class : Soal4-01): 2. Menghitung huruf hidup, konsonan dan spasi dari kalimat sebagai berikut : Array adalah kumpulan data yang bertipr sama menggunakan nama yang sama pula. Setiap identifier berhubungan dengan satu variable dan beberapa variable. Hasil outputnya seperti dibawah ini (nama class : Soal4-02): 3. Menghitung kata yang mengandung YANG dari kalimat sebagai berikut : Array adalah kumpulan data yang bertipe sama menggunakan nama yang sama pula. Setiap identifier berhubungan dengan satu variable dan beberapa variable. Hasil outputnya seperti dibawah ini (nama class : Soal4-03): 4. Menampilkan Array, tetapi menggunakan type data karakter. Isi datanya adalah A;c;D;m;o Pemrograman I Hal : 23
Hasil outputnya seperti dibawah ini (nama class : Soal4-04): 5. Menampilkan Array, tetapi menggunakan type data karakter. Isi datanya adalah Adi Kusuma ; Malang ; 007 ; Melati ; Jl. Sudirman Blok-11 No.61 Hasil outputnya seperti dibawah ini (nama class : Soal4-05): 6. Program untuk mencari bilangan tertinggi pada elemen-elemen array Angka yang nilainya diacak secara random dengan dikalikan (100*Math.random()). Gunakan prosedur baca data dan prosedur cari minimum. (nama class : Soal4-06): 7. Buatlah dengan menggunakan Array satu dimensi. Dengan menginput 6 buah data, kemudian ke-6 elemen Array dijumlahkan. Setelah itu dihitung nilai rata-rata dari ke-6 data tersebut, Hasil output seperti di dibawah ini. (nama class : Soal4-07): Pemrograman I Hal : 24
8. Buatlah untuk menampilkan jumlah hari pada bulan Nopember dengan menggunkan Array 1 dimensi. Bulan Januari=31 hari, Pebruari=28 hari, Maret=31 hari, April=30 hari, Mei=31 hari, Juni=30 hari, Juli=31 hari, Agustus=31 hari, September=30 hari, Oktober=31 hari, Nopember=30 hari, Desember=31 hari,hasil output seperti di dibawah ini. (nama class : Soal4-08): 9. Buatlah untuk menampilkan Jurusan dan usia jurusan dengan menggunakan Array 2 dimensi. Hasil output seperti di dibawah ini. (nama class : Soal4-09): 10. Buatlah dengan menggunakan Array dua dimensi. Dengan tabel sebagai berikut : Nama Algoritma Mikroprosesor Komunikasi Data Rangkaian Logika Rahmaputri 98 40 32 90 Aria May Jesta 81 55 71 50 Teddy Diego Sulu 82 95 47 79 Teguh Kovan Sulu 57 71 68 73 Sekar Arum Kusumadewi 40 56 60 87 Berdasarkan tabel diatas ini, hitung nilai rata-rata tiap mahasiswa dan nilai rata-rata tiap mata kuliah. (nama class : Soal4-10): III. Referensi - Michael C. Daconta, Java Untuk Pemrograman C/C++, Penerbit Andi, Jogyakarta, 1997 - Elliot B. Koffman I Paul A.T. Wolfgang, Objects, Abstraction, Data Structures and Design Using Java, John Wiley & Sons, Inc, 2005 Pemrograman I Hal : 25