Professional Documents
Culture Documents
Tugas
10
1. Buku Alamat
10
2. Segitiga Bawah
10
3. Jumlah Elemen Array
11
4. Bom
11
5. Perkalian Matriks
12
6. Transpose Matriks
13
Minggu lalu kita sudah mempelajari tentang array. Array yang kita pelajari adalah array berdimesi satu.
Pada bahasa Java, kita dapat membuat array berdimesi dua, tiga, empat, dan seterusnya. Minggu ini
kita akan mempelajari array 2 dimensi.
Sebuah aplikasi Java dapat menerima sejumlah argumen dari command-line. Argumen dari command-
line memberikan kesempatan bagi user untuk mengatur operasi dari sebuah aplikasi dalam sekali
pemanggilan program. User memasukkan argumen command-line pada saat memanggil aplikasi dan
menspesifikasikan argumen tersebut setelah nama dari class yang akan dijalankan.
Sebagai contoh, apabila anda memiliki sebuah aplikasi Java dengan nama Sort, yang akan
mengurutkan lima nomor, di command prompt, anda dapat menjalankannya seperti berikut ini.
java Sort 5 4 3 2 1
Perlu diperhatikan bahwa sebuah argumen dapat dipisahkan oleh spasi. Pada bahasa pemrograman
Java, jika kita akan memanggil sebuah aplikasi, sistem runtime akan memberikan argumen command-
line ke method main yang dimiliki oleh aplikasi menggunakan sebuah array dari String. Lalu, setiap
String di dalam array mewakili sebuah argumen commmand-line. Perhatikan deklarasi dari main
method.
public static void main( String[] args )
Argumen yang diberikan kepada program akan disimpan kedalam sebuah array String dengan identifier
args. Pada contoh sebelumnya, argumen dari command-line yang akan diberikan kepada aplikasi Sort
command adalah sebuah array dengan lima
buah
String yaitu “5”,”4”,”3”,”2”, dan “1”. Anda dapat
mengetahui berapa banyak argumen dari command-line dengan cara melihat panjang dari attribute
array. Sebagai contoh :
int numberOfArgs = args.length;
Jika program Anda membutuhkan argumen command-line yang bertipe angka. Anda harus
mengkonversi argumen String tersebut untuk merepresantasikan sebuah angka, misalnya “34” menjadi
sebuah angka 34. Kode dibawah ini adalah sebuah potongan program untuk mengkonversi sebuah
argumen command-line menjadi tipe integer.
int firstArg = 0;
if (args.length > 0)
firstArg = Integer.parseInt(args[0]);
Cobalah untuk memasukkan karakter pada args[0] dan angka pada args[1]. Apa yang akan terjadi ?
Apa arti dari pesan kesalahan yang muncul ?
Selain berdimensi tiga, kita juga dapat membuat array berdimensi empat, lima dan seterusnya. Hal ini
dapat dilakukan karena pada bahasa Java, array berdimensi banyak diimplementasikan seperti array di
dalam array. Array dua dimensi adalah array satu dimensi yang setiap elemennya adalah array satu
dimensi juga. Selanjutnya kita akan mempelajari cara deklarasi array berdimensi banyak.
Array multidimensi dideklarasikan dengan menambahkan jumlah tanda kurung setelah nama array.
Perhatikan contoh berikut.
t6b
Untuk mengakses sebuah elemen didalam array multidimensi, sama saja dengan mengakses array satu
dimensi. Dari program diatas, apa output yang keluar ?
Coba tuliskan deklarasinya jika ingin dibuat suatu array dengan :
(1) nama : Papan_catur , untuk menyimpan informasi pada papan catur, dibuat bertipe integer dan
berukuran 8 x 8.
(2) nama : kubus , array tiga dimensi berukuran 10 x 10 x 10 yg dapat digunakan untuk menyimpan
char.
(3) nama : umur , tipe int , jumlah yg perlu disimpan : 1028 ( array satu dimensi ).
Sama seperti pada array satu dimensi, kita tidak dapat langsung melakukan suatu operasi tertentu
pada array tersebut. Kita tidak dapat menuliskan :
int A[10][10];
A = A + 10;
Operasi-operasi tersebut dapat dilakukan pada elemen array, karena untuk melakukan operasi-operasi
tersebut, kita perlu mengakses elemen array.
Kita dapat melakukan pengaksesan secara sekuensial pada array dimesi banyak. Sama seperti pada
array dimensi satu, sangat merepotkan jika kita hendak menampilkan isi array dengan cara seperti pada
program sebelumnya. Karenanya kita lebih baik melakukan akses secara sekuensial pula pada array
dimensi banyak. Perhatikan pola berikut :
Pada urutan elemn di atas, kita dapat mengikuti polanya dengan cara :
Buatlah sebuah array dua dimensi berukuran 4 x 5 yang dapat menampung 20 buah angka.
User memasukkan 20 buah angka.
Komputer menampilkan 20 buah angka tersebut dengan format seperti tabel.
Contoh input :
1
2
3
4
5
6
7
8
9
10
11
Teknik Informatika UNPAR . Praktikum AKS141 - Dasar-Dasar Pemrograman Ganjil 2009/2010
7
12
13
14
15
16
17
18
19
20
Contoh output :
12345
6 7 8 9 10
11 12 13 14 15
16 17 18 19 20
Pengiriman array dua dimensi ke dalam parameter method, sama seperti pengiriman array satu dimensi
adalah pengiriman secara pass by reference. Untuk pengiriman array dua dimensi (atau lebih), kita
hanya akan menggunakan bentuk :
int X[ ][ ]
Nama file: t12NYYXXX.java (N: nomor soal, YY: angkatan, XXX: 3 digit terakhir NPM)
Lihat jam pengumpulan di E-Learning.
1. Buku Alamat
Berikut ini adalah array multidimensi yang menyatakan isi dari sebuah buku alamat:
String entry = {{"Florence", "735-1234", "Manila"}, {"Joyce", "983-3333", "Quezon City"},
{"Becca", "456-3322", "Manila"}};
Cetak buku alamat tersebut dalam format berikut :
Name : Florence
Tel. : 735-1234
# Address : Manila
Name : Joyce
Tel. : 983-3333
# Address : Quezon City
Name : Becca
Tel. : 456-3322
# Address : Manila
2. Segitiga Bawah
Buatlah program dengan spesifikasi sebagai berikut. Program menerima sebuah bilangan integer N dari
user ( 1<= N <= 10 ). N menyatakan ukuran dari array dua dimensi N x N. Isilah array tersebut dengan N
x N buah bilangan. Kemudian tampilkan isi dari array tersebut dalam bentuk tabel/matriks dan
tampilkan juga matriks segitiga bawah dari tabel/matriks tersebut.
Contoh input :
3
12
73
30
10
35
24
90
73
Teknik Informatika UNPAR . Praktikum AKS141 - Dasar-Dasar Pemrograman Ganjil 2009/2010
10
65
Contoh output :
Matriks :
12 73 30
10 35 24
90 73 65
Hint : anda dapat membuat sebuah array 10 x 10, tetapi tidak perlu digunakan semua tempatnya.
- Tidak perlu menampilkan isi dari array, cukup tampilkan hasil penjumlahan-nya saja.
- Untuk menampilkan hasil ke layar tidak boleh dilakukan di dalam method.
4. Bom
Tugas anda kali ini adalah menghitung banyaknya jumlah bom yang ada pada suatu petak tanah.
Suatu daerah dibagi-bagi menjadi beberapa petak tanah yang memiliki luas yang sama. Pada petak -
petak tertentu di daerah tersebut terdapat bom yang ditanam di dalam tanah (pada setiap petak tanah
terdapat maksimal satu buah bom). Tugas anda adalah menghitung berapa buah petak tanah yang
tertanam bom.
Spesifikasi masukan.
Baris pertama masukan terdiri dari dua buah bilangan a dan b dimana 1<= a,b <=30 yang menyatakan
panjang dan lebar dari suatu daerah.
Untuk setiap a baris berikut, masing - masing baris terdiri dari b bilangan yang menyatakan apakah ada
bom pada petak tersebut. Bilangan 0 menyatakan bahwa pada petak tersebut tidak terdapat bom dan
bilangan 1 menyatakan bahwa pada petak tersebut terdapat bom.
Masukan akan berakhir jika a dan b salah satunya bernilai -1
Contoh input :
55
10000
00101
10000
00100
10000
23
000
000
-1 -1
Contoh output :
Kasus - 1
Jumlah Bom : 6
Kasus - 2
Jumlah Bom : 0
5. Perkalian Matriks
Buatlah sebuah program yang berfungsi untuk menampilkan hasil perkalian dari dua buah matriks.
Spesifikasi masukan
Baris pertama masukan terdiri dari dua buah bilangan a dan b dimana 1<= a,b <=10 yang menyatakan
besar dari matriks A (a -> baris dan b -> kolom ).
Untuk setiap a baris berikut, masing - masing baris terdiri dari b bilangan yang menyatakan nilai dari
matriks tersebut. Nilai dari elemen matriks adalah bilangan bulat n dimana 9 < n < 100
Baris berikutnya terdiri dari dua buah bilangan b dan c dimana 1<= b,c <=10 yang menyatakan besar
dari matriks B ( b -> baris dan c -> kolom ).
Untuk setiap b baris berikut, masing - masing baris terdiri dari c bilangan yang menyatakan nilai dari
matriks tersebut. Nilai dari elemen matriks adalah bilangan bulat n dimana 9 < n < 100. Perhatikan
bahwa kolom matriks A sama dengan baris matriks B.
Spesifikasi keluaran
Tampilkan hasil dari perkalian matriks A dan matriks B.
Contoh output :
488 288 356
616 364 448
760 448 556
6. Transpose Matriks
Buatlah sebuah program yang berfungsi untuk menampilkan transpose dari suatu matriks.
Spesifikasi masukan.
Baris pertama masukan terdiri dari dua buah bilangan x dan y dimana 1<= x,y <=10 yang menyatakan
besar dari matriks tersebut (x -> baris dan y -> kolom ).
Untuk setiap x baris berikut, masing - masing baris terdiri dari y bilangan yang menyatakan nilai pada
kolom dari matriks tersebut. Nilai dari elemen matriks adalah bilangan bulat n dimana 0 < n < 10.
Spesifikasi keluaran.
Tampilkan transpose dari matriks masukan.
Contoh input :
45
86534
25354
94736
14862
Contoh output :
8291
6544
5378
3536
4 4 6 2