Jumat, 24 Agustus 2018

Dasar-Dasar Pemrograman : Array Dua Dimensi Dan Latihan Soal

Dasar-dasar Pemrograman : Array Dua Dimensi dan Latihan Soal



Deklarasi Array Multidimensi 

Pada pembahasan kemudian lalu anda telah melihat bagaimana array berdimensi satu dideklarasikan, perhatikan belahan arahan pada gambar di bawah ini !



Perhatikan bahwa terdapat simbol [ ] disebelah kanan tipe data array! Simbol [ ] pertanda bahwa variabel yang dideklarasikan merupakan array. Tetapi, simbol [ ] juga pertanda banyak dimensi yang dimiliki array. Perhatikan belahan arahan pada Gambar bawah ini !


Potongan arahan pada Gambar di atas menunjukan pendeklarasian array multidimensi. Perhatikan bahwa terdapat dua simbol [ ] disebelah kanan tipe data array! Banyak simbol [ ] disebelahkan tipe data array pertanda banyak dimensi yang dimiliki array.

Bagaimana cara untuk mendeklarasikan sebuah array berdimensi 3 untuk menampung bilangan riil ?

Sama saja hanya tinggal menambahkan [] di kolom int sehingga menjadi menyerupai ini

int[][][] sebuahArray; 


Instansiasi Array Multidimensi 


Instansiasi array multidimensi pada Java tidak berbeda jauh dengan instansiasi array berdimensi satu. Perhatikan belahan arahan pada Gambar di bawah ini !


Potongan arahan pada Gambar di atas menunjukan instansiasi array berdimensi satu. Perhatikan bahwa pada instansiasi array berdimensi satu, angka yang terdapat pada di dalam simbol [ ] merupakan ukuran array. Pada instansiasi array multidimensi kita harus memilih ukuran dari setiap dimensi array sebelum memakai array tersebut. Perhatikan belahan arahan pada Gambar di bawah ini !


Pada belahan arahan yang terdapat pada Gambar di atas, anda sanggup melihat bahwa terdapat dua simbol [ ] pada instansiasi array berdimensi 2. Angka yang berada di dalam simbol [ ] merupakan ukuran dari setiap dimensi array. Angka di dalam simbol [ ] pertama (paling kiri) memilih ukuran dimensi 1 pada array. Angka yang berada di dalam simbol [ ] kedua merupakan ukuran dari dimensi 2 pada array. Anda wajib memilih ukuran dari setiap dimensi array sebelum memakai array tersebut.

Anda tentu sanggup menggabungkan deklarasi dan instansiasi array multidimensi dalam satu baris menyerupai yang ditunjukan oleh belahan arahan pada Gambar di bawah ini.



Mengakses Array Multidimensi

Seperti halnya pengaksesan array berdimensi satu, pengaksesan array multidimensi dilakukan dengan memilih indeks elemen. Lain halnya dengan pengaksesan array berdimensi satu, pengaksesan array multidimensi membutuhkan indeks sebanyak dimensi yang dimiliki oleh array. Perhatikan belahan arahan pada Gambar di bawah ini !


Potongan arahan pada Gambar 6 menunjukan bagaimana cara mengakses suatu elemen pada array berdimensi dua. Perhatikan bahwa terdapat dua buah indeks yang berada di sebelah kanan nama array yang berada di dalam simbol [ ].

Angka yang berada didalam simbol [ ] selalu sanggup diganti dengan semua ekspresi yang menghasilkan bilangan bundar positif. Ekspresi yang dimaksud sanggup hanya berupa sebuah variabel atau berupa ekspresi aritmatika, misalnya perhatikan belahan arahan pada Gambar 7!




1. Apa keluaran dari arahan pada Gambar di atas ?

2. Elemen dengan indeks berapakah yang hanya diakses (baik baca dan tulis) satu kali ?

Latihan



Panen

Seorang petani sedang kebingungan bagaimana ia sanggup memanen sawahnya alasannya ketika ini petani tersebut sedang sakit. Oleh alasannya itu, petani tersebut meminta sumbangan seekor wombat untuk memanen petak-petak sawahnya. Tentu saja sebagai wombat yang baik hati, wombat tersebut bersedia membantu petani. Sayangnya, tidak semua petak sawah sanggup dipanen secara bersamaan. Sawah tersebut terdiri dari petak-petak sebanyak N x N dan hanya petak-petak yang terletak pada garis diagonal utama saja, dari kiri atas ke kanan bawah, yang sanggup dipanen ketika ini. Petani tersebut juga ingin mengetahui berapa berat total dari gabah yang dipanen. Bantulah wombat tersebut menghitung hasil panen petak-petak sawah sang petani.

Spesifikasi Masukan 

Masukan diawali oleh sebuah buah bilangan bundar faktual n. Di mana n merupakan banyak kolom dan baris sawah. Selanjutnya masukan diikuti oleh n buah baris yang setiap barisnya terdiri dari n buah bilangan bundar faktual yang merupakan berat gabah yang sanggup dipanen dari petak tersebut. 

Spesifikasi Keluaran 

Keluarkanlah berat total dari gabah yang sanggup dipanen oleh wombat. 

Contoh Masukan 


12 10 3 

5 5 8 

3 10 4 

Contoh Keluaran 

21 


Survei Skripsi

Seorang mahasiswa sedang melaksanakan survey untuk mengambil data yang akan dipakai pada skripsinya. Mahasiswa tersebut berniat untuk melaksanakan survey untuk mencari berapa banyak mahasiswa yang menitipkan tas dengan warna tertentu pada loker di depan lab komputasi. Sayangnya, mahasiswa tersebut tidak sanggup melaksanakan survey sendiri alasannya ia tidak sanggup membedakan warna. Bantulah mahasiswa tersebut melaksanakan survey.

Spesifikasi Masukan 


Masukan diawali oleh dua buah bilangan bundar n dan m. Di mana n merupakan banyak baris loker dan m merupakan banyak kolom loker. Selanjutnya masukan diikuti oleh n buah baris yang setiap barisnya terdiri dari m buah huruf yang dipisahkan spasi. Karakter-karakter tersebut melambangkan warna dari tas yang berada di loker. Warna tas berupa 1 dari 4 kemungkinan, yaitu M untuk merah, B untuk biru, H untuk hijau, dan P untuk putih. Masukan diakhiri oleh sebuah huruf yang merupakan warna tas yang akan disurvey.

Spesifikasi Keluaran 

Keluaran berupa sebuah bilangan bundar yang merupakan banyaknya tas pada loker dengan warna sesuai survey.

Contoh Masukan 

3 4 

M H B P 
M M B B 
P H M B 


Contoh Keluaran 


Map

Seorang anak sedang mencari alamat untuk hingga ke rumah temannya. Ia mempunyai peta dan petunjuk untuk mencapai rumah temannya. Peta yang dimiliki oleh anak tersebut terbagi menjadi petak-petak area. Anak tersebut takut petunjuk yang diberikan temannya kurang akurat. Oleh alasannya itu, bantulah anak tersebut untuk menyelidiki apakah petunjuk temannya sanggup mencapai area yang tepat.
 
Spesifikasi Masukan 

Masukan diawali oleh sebuah bilangan bundar n, dimana n merupakan banyak baris dan kolom peta. Selanjutnya masukan diikuti oleh n buah baris yang setiap barisnya terdiri dari n buah huruf yang dipisahkan spasi. Setiap huruf dalam array sanggup berupa titik (.), ‘s’, atau ‘t’. Karakter titik melambangkan lokasi kosong, huruf ‘s’ pertanda daerah anak tersebut berada, dan huruf ‘t’ pertanda daerah tinggal temannya. Selanjutnya masukan diikuti oleh sebuah string yang setiap huruf di dalamnya berupa petunjuk arah, yaitu R untuk kanan, L untuk kiri, U untuk atas, dan D untuk bawah. 

Spesifikasi Keluaran 

Keluaran berupa teks yang berisi ‘Akurat’ kalau petunjuk tersebut akurat atau ‘Tidak akurat’ kalau sebaliknya.

Contoh Masukan 1 


. . . . . 

. s . . . 

. . . . . 

. . . . t 

. . . . . 


DDRRR 


Contoh Keluaran 1

Akurat 

Contoh Masukan 2



. . . . . 

. . . s . 

. . . . . 

. . . . . 

. . t . . 

DLDLD 


Contoh Keluaran 2 


Tidak akurat


Simetri


Para wombat sedang mencar ilmu matematika perihal simetri. Supaya lebih menarik, sang guru tidak hanya memperlihatkan contoh-contoh bangkit datar, tapi juga berupa gambar. Gambar ini terbentuk dari NxN buah kotak kecil-kecil, yang berwarna hitam atau putih. Suatu gambar dikatakan simetri kalau ia simetris terhadap sumbu X dan Y. Perhatikan pola berikut ini


Bantulah guru wombat untuk menyelidiki kunci tanggapan dari soal-soal yang ia buat ! 

Spesifikasi Masukan 

Masukan diawali dengan ukuran gambar N, 2 ≤ N ≤ 100. N baris berikutnya masing-masing berisi N buah angka nol (melambangkan putih) atau 1 (melambangkan hitam). Setiap angka dipisahkan satu spasi.

Spesifikasi Keluaran 

Keluarkan goresan pena “true” kalau gambar berupa simetri, atau “false” kalau bukan. 

Contoh Masukan 1 


0 1 1 1 0 
0 1 0 1 0 
1 0 0 0 1 
0 1 0 1 0 
0 1 1 1 0 

Contoh Keluaran 1 

true 

Contoh Masukan 2 


0 0 1 0 0 
0 1 0 1 0 
1 0 0 0 1 
0 1 0 1 0 
0 1 1 1 0 

Contoh Keluaran 2 

false 


WomboCard

Womi yaitu seekor wombat programmer. Kali ini ia sedang membuatkan sebuah kegiatan untuk menggambar memakai perintah-perintah sederhana. Karena masih dalam tahap awal, kegiatan ini gres sanggup menggambar persegi hitam di atas kanvas putih. Perintah yang dipakai yaitu RECTANGLE(x, y, sizeX, sizeY), di mana x dan y yaitu koordinat ujung kiri atas persegi, sizeX dan sizeY yaitu lebar dan tinggi persegi. Seperti pada kegiatan komputer pada umumnya, koordinat (1,1) terletak di ujung kiri atas, dan sumbu y faktual mengarah ke bawah. Pada WomboCad, kanvas selalu berbentuk persegi dengan ukuran NxN

Perhatikan pola kanvas berukuran 10x10 di samping ini. Misalnya dilakukan 2x perintah: 

RECTANGLE (2, 3, 4, 5) => menggambar kotak merah 
RECTANGLE (4, 5, 5, 2) => menggambar kotak hijau 

Maka akan terbentuk gambar selesai menyerupai yang diarsir biru. 

Bantulah Womi menciptakan kegiatan ini !

Spesifikasi Masukan 


Masukan diawali dengan ukuran kanvas N (1 ≤ N ≤ 100) dan banyaknya perintah R (0 ≤ R ≤ 10). R baris berikutnya masing-masing berisi 4 angka yang memperlihatkan x, y, sizeX, dan sizeY. Setiap angka ini tidak ada yang melewati batas koordinat kanvas (antara 1 s.d. N).
Spesifikasi Keluaran

Keluaran berupa gambar hasil. Warna putih dilambangkan titik, warna hitam dilambangkan huruf #.

Contoh Masukan 

10 2 

2 3 4 5 

4 5 5 2 

Contoh Keluaran 

.......... 

.......... 

.####..... 

.####..... 

.#######.. 

.#######.. 

.####..... 

.......... 

.......... 

.......... 

Sumber

Modul dan Tugas Daspro


Sumber http://wikiwoh.blogspot.com


EmoticonEmoticon