• Tidak ada hasil yang ditemukan

09 array3dimensi modul prak algo i versi 5 kelas a b

N/A
N/A
Protected

Academic year: 2018

Membagikan "09 array3dimensi modul prak algo i versi 5 kelas a b"

Copied!
15
0
0

Teks penuh

(1)

Praktikum

:

Algoritma dan Pemrograman I

Modul Praktikum ke

:

09

Judul Materi

:

Array III

Tujuan / Sasaran

:

Mahasiswa dapat membuat pseudecode dan

mempraktekkan perintah Array tiga dimensi dan multidimensi

Waktu (lama)

: 3 Jam

Aplikasi yang digunakan : C++

I.

ARRAY

Array/Larik 3 dimensi (three-dimensional array) dan 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 :

Bentuk Umum :

< TipeData > <NamaArray> = [ i ] [ j ] [ k ]

Sedangkan Array/larik banyak dimensi biasanya diilustrasikan dengan gambar

(2)

- Array multidimensi adalah array dari array. Sebuah array multidimensi dapat

berupa segiempat atau segitiga

Contoh :

int Logika[24, 63];

int A[counterB, counterK]

byte Waktu [jam,menit,detik];

byte Date[tanggal,bulan,tahun];

(3)

Buat Algoritma, Pseudocode dan programnya untuk membuat Array bentuk

segitiga 4 baris 4 kolom, bentuk seperti dibawah ini

PSEUDOCODE :

Algoritma menampilkan Array bentuk segitiga

KAMUS/DEKLARASI VARIABEL

Data[4][4] : int i, j : Int

ALGORITMA/DESKRIPSI

for (i=0; i<4; i++) for (j=0; j<i+1; j++)

input(Data[i][j]) end for

endfor

for (i=0; i<4; i++) for (j=0; j<i+1; j++)

print(Data[i][j]) end for

endfor

ALGORITMA :

1. i 0 2. j 0

3. Selama (i < 4), kerjakan baris 4 dan 7 4. Selama (j < i+1), kerjakan baris 5 dan 6 5. Memasukkan isi elemen Array (Data[i][j]) 6. j  j + 1

7. i  i + 1

8. Selama (i < 4), kerjakan baris 9 dan 12 9. Selama (j < i+1), kerjakan baris 10 dan 11 10. Mencetak/menampilkan (Data[i][j])

(4)

PROGRAM :

(5)

Sebagai gambaran dari proses perkalian matriks, silahkan lihat diagram. Diagram menggambarkan perkalian matriks dengan cara yang umumnya digunakan. Untuk mengalikan matriks a dengan matriks b, maka jumlah kolom matriks a harus sama dengan jumlah baris matriks b. Pada contoh ini matriks a mempunyai 3 kolom, dan matriks b mempunyai 3 baris.

Diagram pertama ini menunjukkan, untuk mendapatkan elemen c1,1 persamaannya

adalah :

c1,1 = (a1,1 x b1,1) + (a1,2 x b2,1) + (a1,3 x b3,1)

Dengan penulisan indeks cx,y, dimana x adalah baris, dan y adalah kolom. Contoh ini,

bila diganti dengan angka yang ada dalam matriks tersebut menjadi :

9 = (2 x 2) + (2 x 2) + (1 x 1)

(6)

Apabila ditulis dengan rumus matematika, maka perkalian matriks ditulis seperti berikut

Dimana i adalah indeks untuk baris, j indeks untuk kolom, dan n adalah jumlah kolom matriks a.

Untuk melakukan proses perkalian matriks dengan menggunakan bahasa pemrograman tertentu, kita bisa mengikuti cara (algoritma) yang berlaku di atas. Proses ini melibatkan struktur data berbentuk array, loop, dan operasi perkalian,

serta penjumlahan.

Pertama, inisialisasi dulu matriks yang akan dikalikan. Matriks a dan matriks b yang akan dikalikan diisi terlebih dahulu dengan nilai yang diinginkan. Sedangkan matriks c yang merupakan hasil dari perkalian kedua matriks ini, semua elemennya diinisialisasi dengan nilai 0. Array yang digunakan untuk matriks adalah array 2 dimensi. Setelah inisialisasi data, proses perkalian matriks sudah bisa dilakukan. Dan berikutnya, jika diperlukan, tampilkan hasil perkalian.

Proses perkalian matriks dilakukan dengan menggunakan loop, seperti berikut ini :

for ($j = 1; $j <= $kolom_matriks_b; $j++) { for ($i = 1; $i <= $baris_matriks_a; $i++) { for ($k = 1; $k <= $kolom_matriks_a; $k++) { $c[$i][$j] = $c[$i][$j] + ($a[$i][$k] * $b[$k][$j]); }

} }

(7)

Jika dilihat operasi yang ada dalam loop terdalam, yaitu :

$c[$i][$j] = $c[$i][$j] + ($a[$i][$k] * $b[$k][$j]);

sama dengan bentuk rumus perkalian matriks di atas.

Untuk tambahan, jika kita lihat algoritma di atas, berapakah kompleksitasnya? Dari pengamatan sekilas, dengan menggunakan loop sampai kedalaman 3, bisa jadi berbentuk n3. Dengan asumsi bahwa matriks a dan matriks b adalah matriks bujursangkar (n x n), maka perhitungan kompleksitas secara sederhana seperti berikut :

- Proses terdalam c = c + (a x b) memerlukan proses tambah dan kali,

dilakukan sebanyak jumlah kolom matriks a, yaitu n. Jadi proses ini memerlukan 2n langkah

- Karena proses ini berada dalam loop di luarnya sebanyak jumlah baris

matriks a (sebanyak n), maka langkah sebanyak 2n tadi menjadi 2n x n = 2n2

- Dan masih ada satu loop di luarnya yang dilakukan sebanyak jumlah kolom

matriks b (sebanyak n), maka 2n2 x n = 2n3

Jadi secara kasar, memang kompleksitas dengan algoritma ini berorde 3. Dan tentu saja ini perlu sedikit perhatian. Misalnya dengan matriks 2 x 2, kita memerlukan langkah sebanyak 23 = 8. Dan ketika dengan matriks 5 x 5, diperlukan 53 = 125 langkah. Dan ketika dengan matriks 10 x 10, diperlukan 103 = 1000 langkah. Dan jika dengan matriks 100 x 100, diperlukan 1003 = 1000000 langkah!

(8)
(9)
(10)

3. Buatlah Array bentuk segitiga 6 baris 6 kolom, bentuk seperti dibawah ini dengan inputan berupa huruf (nama file : P9-03.ccp):

4. Buatlah Array bentuk segitiga 4 baris 4 kolom, bentuk seperti dibawah ini dengan inputan berupa angka (nama file : P9-04.ccp):

5. Buatlah Array bentuk segitiga 4 baris 4 kolom, bentuk seperti dibawah ini dengan inputan berupa huruf (nama file : P9-05.ccp):

6. Buatlah Array bentuk segitiga 8 baris 8 kolom, bentuk seperti dibawah ini dengan inputan berupa angka (nama file : P9-06.ccp):

7. Buatlah Array bentuk segitiga 8 baris 8 kolom, bentuk seperti dibawah ini dengan inputan berupa huruf (nama file : P9-07.ccp):

8. Buatlah Array bentuk segitiga 3 baris 3 kolom, bentuk seperti dibawah ini dengan inputan berupa angka (nama file : P9-08.ccp):

9. Buatlah Array bentuk segitiga 3 baris 3 kolom, bentuk seperti dibawah ini dengan inputan berupa huruf (nama file : P9-09.ccp):

10. Buatlah Array bentuk segitiga 5 baris 5 kolom, bentuk seperti dibawah ini dengan inputan berupa angka (nama file : P9-10.ccp):

11. Buatlah Array bentuk segitiga 5 baris 5 kolom, bentuk seperti dibawah ini dengan inputan berupa huruf (nama file : P9-11.ccp):

12. Buatlah Array bentuk segitiga 9 baris 9 kolom, bentuk seperti dibawah ini dengan inputan berupa angka (nama file : P9-08.ccp):

(11)

14. Buatlah Array bentuk segitiga 9 baris 9 kolom, bentuk seperti dibawah ini dengan inputan berupa Angka (nama file : P9-14.ccp):

15. Buatlah Array bentuk segitiga 9 baris 9 kolom, bentuk seperti dibawah ini dengan inputan berupa huruf (nama file : P9-15.ccp):

16. Buatlah Array bentuk segitiga 9 baris 9 kolom, bentuk seperti dibawah ini dengan inputan berupa Angka (nama file : P9-16.ccp):

17. Buatlah Array bentuk segitiga 9 baris 9 kolom, bentuk seperti dibawah ini dengan inputan berupa huruf (nama file : P9-17.ccp):

18. Kalikan matrix di bawah ini, tanpa inputan! (nama file : P9-18.ccp):

19. Kalikan matrix di bawah ini, dengan inputan! (nama file : P9-19.ccp):

20. Kalikan matrix di bawah ini, dengan metode di input (nama file : P9-20.ccp):

(12)

23. Kalikan matrix di bawah ini! (nama file : P9-23.ccp):

24. Tentukan hasil perkalian matrix dibawah ini!, tanpa inputan (nama file : P9-24.ccp):

25. Tentukan hasil perkalian matrix dibawah ini, dengan metode di input! (nama file : P9-25.ccp):

26. Kalikan matrix di bawah ini!, tanpa inputan (nama file : P09-26.ccp):

27. Kalikan matrix di bawah ini!, dengan inputan (nama file : P09-27.ccp):

28. Kalikan matrix di bawah ini, dengan metode di input! (nama file : P09-28.ccp):

29. Kalikan matrix di bawah ini, tanpa inputan! (nama file : P09-29.ccp):

(13)

31. Buatlah Array bentuk segitiga 5 baris 5 kolom, bentuk seperti dibawah ini dengan inputan berupa huruf (nama file : P9-31.ccp):

32. Buatlah Array bentuk segitiga 5 baris 5 kolom, bentuk seperti dibawah ini dengan inputan berupa angka (nama file : P9-32.ccp):

33. Buatlah Array bentuk segitiga 5 baris 5 kolom, bentuk seperti dibawah ini dengan inputan berupa huruf (nama file : P9-33.ccp):

34. Buatlah Array bentuk segitiga 9 baris 9 kolom, bentuk seperti dibawah ini dengan inputan berupa angka (nama file : P9-34.ccp):

35. Buatlah Array bentuk segitiga 9 baris 9 kolom, bentuk seperti dibawah ini dengan inputan berupa huruf (nama file : P9-35.ccp):

(14)

38. Buatlah Array bentuk segitiga 7 baris 7 kolom, bentuk seperti dibawah ini, dengan inputan berupa angka (nama file : P9-38.ccp):

39. Buatlah Array bentuk segitiga 7 baris 7 kolom, bentuk seperti dibawah ini, dengan inputan berupa huruf (nama file : P9-39.ccp):

40. Kalikan dua buah matriks dengan ordo 3x4 dan 4x3 (nama file : P9-40.ccp):

41. Kalikan dua buah matriks dengan ordo 3x3 dan 3x3 (nama file : P9-41.ccp):

42. Kalikan dua buah matriks dengan ordo 4x4 dan 4x4 (nama file : P9-42.ccp):

43. Jumlahkan dua buah matriks dengan ordo 3x2 dan 2x3 dengan inputan (nama file : P9-43.ccp):

44. Jumlahkan dua buah matriks dengan ordo 3x4 dan 4x3 dengan inputan (nama file : P9-44.ccp):

45. Kalikan dua buah matriks dengan ordo 3x4 dan 4x3 dengan inputan (nama file : P9-45.ccp):

46. Kalikan dua buah matriks dengan ordo 3x3 dan 3x3 dengan inputan (nama file : P9-46.ccp):

47. Kalikan dua buah matriks dengan ordo 4x4 dan 4x4 dengan inputan (nama file : P9-47.ccp):

48. Buatlah array berbentuk segitiga rata kiri dengan 5 baris 5 kolom (nama file : P9-48.ccp):

49. Buatlah array berbentuk segitiga rata kiri dengan 5 baris 5 kolom dengan inputan (nama file : P9-49.ccp):

50. Buatlah array seperti dibawah ini : (nama file : P9-50.ccp):

(15)

52. Buatlah array berbentuk segitiga sama kaki terbalik dengan 3 baris 3 kolom, seperti dibawah ini : (nama file : P9-52.ccp):

III. Referensi

- Munir, Rinaldi, Algoritma & Pemrograman 1 & 2, Penerbit Informatika, Jakarta, 2003 - Brookshear, Glenn, Computer Science, Penerbit Erlangga, Jakarta, 2004

- Suryadi, Pengantar Algortima dan Pemrograman

- Yatini B, Indra, Pemrograman Terstruktur, J&J Learning Yogyakarta, 2001 - Limanto, Susana, Algoritma dan pemrograman, Dinastindo Jakarta, 2002

- Paul Tremblay, Jean, An Introduction to Computer Science an algorithmic Approach, McGraw-Hill, 1981

- Wirth, Niklaus, Algorithmic + Data Structures = Programs, Prentice-Hall, 1976 - Jogiyanto H.M, Kosep Dasar Pemrograman Bahasa C, Andi Offset Yogyakarta, 1993

- Munir, Rinaldi, Algoritma dan Pemrograman Dalam Bahasa Pascal dan C, Informatika Bandung, 2001 - Pranata, Antony, Algoritma dan Pemprograman, J&J Learning Yogyakarta, 2000

- Andri Kristanto, Algoritma dan Pemrograman dengan C++, Graha Ilmu, 2003

Referensi

Dokumen terkait

Jangan lupa disave hasilmu klik File lalu save As ketik nama file tersebut dengan type CDR jika ingin convert dalam bentuk foto gambar maka ganti dengan type JPEG atau Bitmap

Mengidentifikasi permasalahan Pembelajaran di kelas terkait lima mata pelajaran SD/MI yang dapat dipecahkan dengan PTK..

Dibaca dua buah bilangan yang membedakan apakah A &gt; B, apabila lebih besar maka berkomentar “Benar” tetapi kalau tidak akan berkomentar “Salah” (nama file

Tampilkan total yang harus dibayar seoraang pembeli sesudah dikurangi harga diskon (nama file : Prak2-03.cpp).. Karyawan di PT sejahtera dihitung perjam sebesar

jika jenis kelamin memilih no.1 atau laki-laki dan tinggi badan lebih dari 165, maka memenuhi syarat dan lulus, selain dari itu jika jenis kelamin memilih no.1 dan

Untuk sebuah kasus yaitu syarat tinggi badan dalam test tertentu, dimana jika jenis kelamin memilih no.1 atau laki-laki dan tinggi badan lebih dari 165, maka memenuhi

Dibawah ini contoh flowchart, manual, algoritma dan program Perulangan /Repetation, untuk memasukkan proses ”k” pengulangan sebanyak 4 kali dan ”i”

Peserta didik diarahkan untuk mengamati gambar tentang bentuk atau lambang huruf- huruf hijaiah berharakat yang ada di dalam Buku PAI & BP SD Kelas 1 Erlangga halaman 5 dan 63. Guru