• Tidak ada hasil yang ditemukan

Laporan Bab 3 Algoritma dan Struktur Dat

N/A
N/A
Protected

Academic year: 2018

Membagikan "Laporan Bab 3 Algoritma dan Struktur Dat"

Copied!
24
0
0

Teks penuh

(1)

LABORATORIUM PEMBELAJARAN ILMU KOMPUTER

FAKULTAS ILMU KOMPUTER

UNIVERSITAS BRAWIJAYA

BAB

: ARRAY 2 DIMENSI

NAMA

: M SATRIA PUTRA UTAMA

NIM

: 155150207111168

TANGGAL : 01/10/2016

ASISTEN

: ILHAM ROMADHONA

A.

DEFINISI MASALAH

Tugas 3.1

1. Tambahkan method untuk mengubah dari ADT Matrik ke struktur array dua dimensi dengan header :

double [][] toDArray()

2. Tambahkan method untuk transpose matrik dengan header Matrik tranposeMatrik()

3. Tambahkan method untuk perkalian matrik dengan header Matrik kali(Matrik m)

Interface pemanggilan method di atas sebagai berikut : Misalkan dideklarasikan Matrik A,B, C;

C = A.kali(B)

4. Tambahkan method untuk mengambil isi baris tertentu dan is kolom tertentu dari matrik dan hasilnya dikeluarkan berupa larik dengan header sebagai berikut :

Larik getKolom(int idK) Larik getBaris(int idK)

Untuk dapat menjalankan ini tambahkan program Larik pada praktikum 1 diatas program ini atau anda susun dalam bentuk paket (minta petunjuk pada asisten).

Karena larik pada program 1 tipe itemnya integer maka agar kompatibel dengan program matrik ada dua cara :

 Lakukan casting (minta petunjuk pada asisten)

 Anda edit tipe data itemDt pada larik bertipe fload

Tugas 3.2

Program Latihan Praktikum 3.2 1

2 3 4 5 6 7

package ADT_Larik;

/**

* ADT Matrik

* @author achmad ridok */

(2)

8

private int nBaris, nKolom; private double [][]itemDt; /**

* constructor untuk membuat suatu matrik * @param nBrs : banyaknya baris

* @param nKlm : banyaknya kolom */

public Matrik(int nBrs, int nKlm){ nBaris = nBrs;

nKolom = nKlm;

itemDt = new double[nBaris][nKolom]; }

/**

* constructor untuk membuat matrik dari array 2 dimensi

* @param A : array dua dimensi */

public Matrik(double [][]A){

this(A.length,A[0].length); // panggil contructor

this.nBaris = A.length; this.nKolom = A[0].length;

for (int i=0; i<nBaris; i++){

for (int j=0; j<nKolom; j++){ this.itemDt[i][j] = A[i][j]; }

} }

/**

* Fungsi untuk mendapatakan jumlah baris * @return jumlah baris

*/

public int getNBaris(){ return nBaris;} public int getNKolom(){ return nKolom;} public double getItem(int idB, int idK){ return this.itemDt[idB][idK];

}

public void setItem(int idB, int idK, double dt){ this.itemDt[idB][idK] = dt;

}

public static Matrik tambah(Matrik A, Matrik B){ // tambahkan bagian ini

}

/**

* fungsi static perkalian antara vektor dengan matrik * Syarat : lebar L sama dengan jumlah baris M

(3)

62

* @return Vector (Larik) berdimensi nKolom dari M */

public static Larik VektorKaliMatrik(Larik L, Matrik M){

Larik lHasil = null; Larik lKolom = null;

if (L.getSize() == M.getNBaris()){ lHasil = new Larik(M.getNKolom()); for (int i=0; i<M.getNKolom(); i++){

lKolom = M.getKolom(i); double hasil =

Larik.LarikKaliLarik(L, lKolom);

System.out.println(hasil); lHasil.isiItem(i, hasil);

} }

return lHasil; }

/**

* fungsi static tranpos suatu matrik * @param A : Matrik

* @return Matrik tranpos */

public static Matrik tranpos(Matrik A){ // lenkapi bagian ini

} /**

* fungsi untuk mendapatkan vektor baris dari matrik * @param idBaris : indek baris yang akan diekstrak * @return Larik representasi baris

*/

public Larik getBaris(int idBaris){ // lenkapi bagian ini

}

/**

* fugsi untuk mendapatkan vektor kolom suatu matrik * @param idKolom : id kolom yang akan diekstrak * @return Larik representasi kolom

*/

public Larik getKolom(int idKolom){ Larik l = new Larik(this.nBaris); for (int i=0; i<this.nBaris; i++){

double itemKolom = this.getItem(i, idKolom);

(4)

115 116 117 118 119

120 121 122 123

public void cetak(String kom){ System.out.println(kom);

for (int i=0; i<this.nBaris; i++){

for (int j=0; j<this.nKolom; j++){ System.out.printf("%.2f ",this.itemDt[i][j]);

}

System.out.println(); }

}

Tugas 3.2.

Lengkapi program di atas sehingga dengan potongan program driver berikut akan menghasilkan keluaran sebagaimana disamping.

Matrik A,B,C;

double [][]data1 = {{1,2,3},{3,4,7}}; double [][]data2 = {{4,5,1},{6,1,9}}; A = new Matrik(data1);

B = new Matrik(data2); A.cetak("A"); B.cetak("B"); C = Matrik.tambah(A,B); C.cetak("C");

Matrik CT = Matrik.tranpos(C); CT.cetak("Tsanpos");

Larik l1 = C.getBaris(1); l1.cetak("Baris ke 1 dari C"); Larik l2 =

Matrik.VektorKaliMatrik(l1,CT); l2.cetak("Hasil kali C.L1");

A

1.00 2.00 3.00 3.00 4.00 7.00 B

4.00 5.00 1.00 6.00 1.00 9.00 C

5.00 7.00 4.00 9.00 5.00 16.00 Tsanpos

5.00 9.00 7.00 5.00 4.00 16.00

Baris ke 1 dari C 9.00 5.00 16.00 144.0

362.0

Hasil kali C.L1 144.00 362.00

B. SOURCE CODE

Tugas 3.1

Matrik.java 1

2 3 4 5 6 7 8 9 10 11 12

package asdpraktikum;

import java.util.Scanner;

public class Matrik { // Data

private int nBaris, nKolom; private double[][] itemDt;

(5)

13 x.getItem(i, j));

(6)

64 m.getNKolom()))) {

(7)

115

A.transposeMatrik().cetak("Transpose Matrik A"); B.transposeMatrik().cetak("Transpose Matrik B"); C = A.tambah(B);

C.cetak("Matrik C = A + B");

double m[][] = A.toArray("Jadi Array\nMasukkan Data Matrik A");

for (int i = 0; i < m.length; i++) {

for (int j = 0; j < m[0].length; j++) { System.out.print(m[i][j] + " "); }

(8)

168 169 170

171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188

}

double t[][] = B.toArray("Jadi Array\nMasukkan Data Matrik B");

for (int i = 0; i < t.length; i++) {

for (int j = 0; j < t[0].length; j++) { System.out.print(t[i][j] + " "); }

System.out.println(""); }

A.kali(B).cetak("Perkalian Matrik A dan B"); Larik w = A.getKolom(0);

w.cetak("Kolom ke 1 Matrik A"); w = A.getBaris(0);

w.cetak("Baris ke 1 Matrik A"); Larik b = B.getBaris(0);

b.cetak("Baris ke 1 Matrik B"); b = B.getKolom(0);

b.cetak("Kolom ke 1 Matrik B");

} }

Tugas 3.2

Matrik.java 1

2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26

Package asdpraktikum;

/** *

* @author M Satria Putra Utama */

public class Matrik {

private int nBaris, nKolom; private double[][] itemDt;

/**

* constructor untuk membuat suatu matrik *

* @param nBrs : banyaknya baris * @param nKlm : banyaknya kolom */

public Matrik(int nBrs, int nKlm) { nBaris = nBrs;

nKolom = nKlm;

itemDt = new double[nBaris][nKolom]; }

/**

(9)
(10)

79

* fungsi static perkalian antara vektor dengan matrik Syarat : lebar L sama

public static Larik VektorKaliMatrik(Larik L, Matrik M) { Larik lHasil = null;

* fungsi untuk mendapatkan vektor baris dari matrik *

* @param idBaris : indek baris yang akan diekstrak * @return Larik representasi baris

(11)

132

(12)

185 186 187 188 189

l1.cetak("Baris ke 1 dari C");

Larik l2 =Matrik.VektorKaliMatrik(l1, CT); l2.cetak("Hasil kali C.L1");

} }

Tambahan untuk dapat menjalankan Method VektorKaliMatrik tambahkan code berikut ke Class Larik

Larik.Java 1

2 3 4 5 6 7 8 9 10

public double getItem(int i){ return itemDt[i]; }

static double LarikKaliLarik(Larik L, Larik lKolom) { double res = 0;

for (int i = 0; i < L.size; i++) {

res=res+(L.getItem(i)*lKolom.getItem(i)); }

return res; }

C.

PEMBAHASAN

Tugas 3.1

Matrik.java 1

3 5 6 8 9 11

12 13 14

15 17

18 19 20

21

22

23

Package asdpraktikum.

Mengimport fungsi dari Scanner.

Deklarasi class Matrik yang bersifat public Comment

Deklarasi variabel nBaris dan nKolom yang bertipe integer

Deklarasi Array 2 dimensi yang bernama itemDt dan bertipe double

Constructor bersifat public yang memiliki parameter nBrs dan nKlm yang keduanya bertipe integer

Menentukan nilai dari nBaris adalah sama dengan nilai parameter nBrs Menentukan nilai dari nKolom adalah sama dengan nilai parameter nKlm

Menetukan ukuran Array itemDt yang dimana baris dan kolomnya tergantung dari nilai nBaris dan nKolom

Parsing

Constructor bersifat public yang memiliki parameter Array bernama dt dan bersifat double

Menentukan nilai dari nBaris adalah sama dengan nilai panjang baris dari Array dt Menentukan nilai dari nKolom adalah sama dengan nilai panjang kolom dari Array dt Menentukan Baris dan Kolom dari Array itemDt yang Baris dan Kolomnya tergantung dari nilai variabel nBaris dan nKolom

Deklarasi perulangan for yang mana dimulai dari i = 0 dan akan terus berulang selama nilai i < nBaris dan i akan terus bertambah 1 selama perulangan

Deklarasi perulangan for yang mana dimulai dari j = 0 dan akan terus berulang selama nilai j < nKolom dan j akan terus bertambah 1 selama perulangan

(13)

24 25 26 28 29 30 31 32 33 34 35 37 38 39 41

42

43 45

46

47 49

50 51

53

54

55

56 57 58 59 60 62

63

64

dengan nilai dari Array dt baris ke i dan kolom ke j Parsing

Parsing Parsing Comment Comment Comment Comment Comment

Deklarasi method getNBaris bertipe integer dan bersifat public Mengembalikan nilai dari nBaris

Parsing

Deklarasi method getNKolom yang bertipe integer dan bersifat public Mengembalikan nilai nKolom

Parsing

Deklarasi method getItem bertipe double dan bersifat public juga memiliki parameter idB dan idK yang keduanya bertipe integer

Mengembalikan nilai dari Array itemDt yang baris dan kolom tergantung nilai dari parameter idB dan idK

Parsing

Deklarasi method setItem yang tidak mengembalikan nilai dan bersifat public juga memiliki parameter idB dan idK bertipe integer juga dt bertipe double

Memberi nilai Array itemDt yang baris dan kolom tergantung nilai dari parameter idB dan idK dengan nilai dari parameter dt

Parsing

Deklarasi method tambah bertipe Matrik dan bersifat public juga memiliki parameter x yang bertipe Matrik

Deklarasi variabel y bertipe Matrik dan diberi nilai awal null

Deklarasi fungsi if yang jika nilai this.nBaris = x.getNBaris() dan nilai this.nKolom = x.getNKolom() maka

Deklarasi perulangan for yang dimulai dari nilai i = 0 dan akan terus berulang jika i < this.nBaris dan i akan bertambah 1 selama perulangan

Deklarasi perulangan for yang dimulai dari nilai j = 0 dan akan terus berulang jika j < this.nKolom dan j akan bertambah 1 selama perulangan

Variabel y memanggil method setItem yang mana akan memberi nilai Array yang barisnya tergantung nilai i dan kolomnya tergantung nilai j kemudian diisi dengan nilai penjumlahan dari Array itemDt[i][j] dengan x.getItem(i, j)

Parsing Parsing Parsing

Mengembalikan nilai dari y Parsing

Deklarasi method bernama kali bertipe Matrik juga memiliki parameter m bertipe Matrik

Menginstansiasi objek bernama res dari kelas Matrik dan memberi parameter pada constructor diisi dengan m.getNBaris(), m.getNKolom

(14)

65

66

67 68

69

70 71

72 73 75 76 79 81

82 83 84

85

86

87 88

89 90 91 92 94

95 96

97

98 99 100 101 102

m.getNKolom() maka

Deklarasi perulangan for yang dimulai dari nilai x = 0 dan akan terus berulang jika x < this.nBaris dan x akan bertambah 1 selama perulangan

Deklarasi perulangan for yang dimulai dari nilai y = 0 dan akan terus berulang jika y < this.nKolom dan y akan bertambah 1 selama perulangan

Deklarasi variabel sem bertipe int dan bernilai awal 0

Deklarasi perulangan for yang dimulai dari nilai z = 0 dan akan terus berulang jika z < nKolom dan z akan bertambah 1 selama perulangan

Proses perhitungan sem = sem + (nilai Array itemDt baris x kolom z * nilai m.getItem berparameter z dan y)

Parsing

Objek res memanggil method setItem yang akan memberi nilai pada Array baris dan kolom tergantung pada nilai x dan y dan diisi dengan nilai dari sem

Parsing Parsing Parsing

Mengembalikan nilai res Parsing

Deklarasi method toArray bertipe Array 2 dimensi double juga memiliki parameter a bertipe String

Mencetak dengan menggunakan println yang berisi nilai dari parameter a Deklarasi fungsi Scanner bernama in

Deklarasi perulangan for yang dimulai dari nilai i = 0 dan akan terus berulang jika i < itemDt.length dan i akan bertambah 1 selama perulangan

Deklarasi perulangan for yang dimulai dari nilai j = 0 dan akan terus berulang jika j < itemDt[i].length dan j akan bertambah 1 selama perulangan

Mencetak dengan menggunakan print dengan isi “Masukkan data baris ke “ + (i + 1) + “ kolom ke “ + (j + 1) + “ : “

User memasukkan sebuah input bertipe double yang akan disimpan dalam variabel x Pemberian nilai pada Array itemDt baris ke i dan kolom ke j dengan nilai dari variabel x.

Parsing Parsing

Mengembalikan nilai dari itemDt Parsing

Deklarasi method cetak yang tidak mengembalikan nilai dan bersifat public juga memiliki parameter kom bertipe String

Mencetak dengan println dengan isi dari parameter kom

Deklarasi perulangan for yang dimulai dari nilai i = 0 dan akan terus berulang jika i < this.nBaris dan i akan bertambah 1 selama perulangan

Deklarasi perulangan for yang dimulai dari nilai j = 0 dan akan terus berulang jika j < this.nKolom dan j akan bertambah 1 selama perulangan

Mencetak dengan print dengan isi this.itemDt[i][j] + “ “ Parsing

Mencetak dengan println tanpa isi dan hanya sebagai pengganti enter Parsing

(15)

104

105

106

107

108

109 110 111 113

114

115

116

117

119 120 121 123 124

126

127

128

129 130 131 132 135

136 137

138

139

Deklarasi method getKolom bertipe Larik dan bersifat public juga memiliki parameter idK bertipe integer

Menginstansiasi objek x dari kelas Laris dan memberikan constructor parameter dengan isi this.nBaris

Deklarasi perulangan for yang dimulai dari nilai i = 0 dan akan terus berulang jika i < this.nBaris dan i akan bertambah 1 selama perulangan

Deklarasi variabel baru bertipe double dan diberi nilai awal nilai dari this.getItem(i, idK)

Objek x memanggil method isiItem yang parameternya diberi nilai dari i, dan juga nilai dari variabel baru yang diubah dari double ke integer

Parsing

Mengembalikan nilai x Parsing

Deklarasi method getBaris bertipe Larik dan bersifat public juga memiliki parameter idK bertipe integer

Menginstansiasi objek x dari kelas Larik dan juga memberi constructor parameter dengan isi this.nKolom

Deklarasi perulangan for yang dimulai dari nilai i = 0 dan akan terus berulang jika i < this.nKolom dan i akan bertambah 1 selama perulangan

Deklarasi variabel baru bertipe double dan diberi nilai awal nilai dari this.getItem(idK, i)

Objek x memanggil method isiItem yang parameternya diberi nilai dari i, dan juga nilai dari variabel baru yang diubah dari double ke integer

Parsing

Mengembalikan nilai x Parsing

Deklarasi method transposeMatrik bertipe Matrik tanpa parameter

Menginstansiasi objek S dari kelas Matrik dan juga memberi constructor parameter dengan isi nBaris, nKolom

Deklarasi perulangan for yang dimulai dari nilai i = 0 dan akan terus berulang jika i < nKolom dan i akan bertambah 1 selama perulangan

Deklarasi perulangan for yang dimulai dari nilai j = 0 dan akan terus berulang jika j < nBaris dan j akan bertambah 1 selama perulangan

Objek S memanggil method isiItem baris ke i dan kolom ke j yang diisi dengan nilai dari itemDt baris ke j dan kolom ke i

Parsing Parsing

Mengembalikan nilai S Parsing

Deklarasi method cetak yang tidak mengembalikan nilai dan bersifat static juga memiliki paramter a bertipe Array 2 dimensi double dan x bertipe String

Mencetak dengan println dengan isi dari parameter x

Deklarasi perulangan for yang dimulai dari nilai i = 0 dan akan terus berulang jika i < a.length dan i akan bertambah 1 selama perulangan

Deklarasi perulangan for yang dimulai dari nilai j = 0 dan akan terus berulang jika j < a[i].length dan j akan bertambah 1 selama perulangan

(16)

140 141 142 144 146 147 148 150 151 153

154

156 157 158

159

160

161 162

163

164

165 166 167 168 170

171

172

173 174 175 176 177

menjadi double + “ “ Parsing

Mencetak dengan println dengan isi “ ” dan hanya digunakan sebagai pengganti enter Parsing

Parsing

Main method public static void Comment

Deklarasi objek A, B, C, D, S dari kelas Matrik

Pemberian nilai pada Array 2 dimensi bertipe double yang bernama X Pemberian nilai pada Array 2 dimensi bertipe double bernama Y

Pemberian nilai Objek A dengan nilai dari constructor Matrik yang diberi parameter Array X

Pemberian nilai Objek B dengan nilai dari constructor Matrik yang diberi parameter Array Y

Objek A memanggil method cetak yang diberi parameter “Matrik A” Objek B memanggil method cetak yang diberi parameter “Matrik B”

Objek A memanggil method transposeMatrik tanpa parameter dan juga memanggil method cetak dengan parameter “Transpose Matrik A”

Objek B memanggil method transposeMatrik tanpa parameter dan juga memanggil method cetak dengan parameter “Transpose Matrik B”

Pemberian nilai Objek C dengan nilai dari Objek A yang memanggil method tambah dengan parameter Objek B

Objek C memanggil method cetak berparameter “Matrik C = A + B”

Deklarasi Array 2 dimensi bernama m dan bertipe double dan diberi nilai awal dari Objek A yang memanggil method toArray berparameter “Jadi Array\nMasukkan Data Matrik A”

Deklarasi perulangan for yang dimulai dari nilai i = 0 dan akan terus berulang jika i < m.length i akan bertambah 1 selama perulangan

Deklarasi perulangan for yang dimulai dari nilai j = 0 dan akan terus berulang jika j < m[0].length dan j akan bertambah 1 selama perulangan

Mencetak dengan print dengan isi nilai dari Array m baris ke i kolom ke j + “ “ Parsing

Mencetak dengan println dengan isi “ “ dan hanya sebagai pengganti enter Parsing

Deklarasi Array 2 dimensi bernama t dan bertipe double dan diberi nilai awal dari Objek B yang memanggil method toArray berparameter “Jadi Array\nMasukkan Data Matrik B”

Deklarasi perulangan for yang dimulai dari nilai i = 0 dan akan terus berulang jika i < t.length i akan bertambah 1 selama perulangan

Deklarasi perulangan for yang dimulai dari nilai j = 0 dan akan terus berulang jika j < t[0].length dan j akan bertambah 1 selama perulangan

Mencetak dengan print dengan isi nilai dari Array t baris ke i kolom ke j + “ “ Parsing

Mencetak dengan println dengan isi “ “ dan hanya sebagai pengganti enter Parsing

(17)

178

179 180

181 182

183 184

185 187 188

Deklarasi Objek w dari kelas Larik dan diberi nilai awal dari Objek A yang memanggil method getKolom berparameter 0

Objek w memanggil method cetak berparameter “Kolom ke 1 Matrik A”

Pemberian nilai Objek w dengan nilai dari Objek A yang memanggil method getBaris berparameter 0

Objek w memanggil method cetak berparameter “Baris ke 1 Matrik A”

Deklarasi Objek b dari kelas Larik dan diberi nilai awal dari Objek B yang memanggil method getBaris berparameter 0

Objek b memanggil method cetak berparameter “Baris ke 1 Matrik B”

Pemberian nilai Objek b dengan nilai dari Objek B yang memanggil method getKolom berparameter 0

Objek b memanggil method cetak berparameter “Kolom ke 1 Matrik B” Parsing

Parsing

Tugas 3.2

Matrik.java 1

3 4 5 6 7 9 10 12 13 14 15 16 17 18

19 20 21

22 24 25 26 27 28 29

30 31

Package asdpraktikum. Comment

Comment Comment Comment

Deklarasi class Matrik yang bersifat public

Deklarasi variabel nBaris dan nKolom yang bertipe integer dan bersifat private Deklarasi Array 2 dimensi yang bernama itemDt dan bertipe double

Comment Comment Comment Comment Comment Comment

Constructor bersifat public yang memiliki parameter nBrs dan nKlm yang keduanya bertipe integer

Menentukan nilai dari nBaris adalah sama dengan nilai parameter nBrs Menentukan nilai dari nKolom adalah sama dengan nilai parameter nKlm

Menetukan ukuran Array itemDt yang dimana baris dan kolomnya tergantung dari nilai nBaris dan nKolom

Parsing Comment Comment Comment Comment Comment

Constructor bersifat public yang memiliki parameter Array 2 dimensi bernama A dan bertipe double

(18)

32 34

35

36

37 38 39 41 42 43 44 45 46 47 48 50 51 52 54

55

56 58

59

60 62 63 64 65 66 67 68 69

70 71 72

73

74

Menentukan nilai dari nKolom adalah sama dengan nilai panjang kolom dari Array A Deklarasi perulangan for yang mana dimulai dari i = 0 dan akan terus berulang selama nilai i < nBaris dan i akan terus bertambah 1 selama perulangan

Deklarasi perulangan for yang mana dimulai dari j = 0 dan akan terus berulang selama nilai j < nKolom dan j akan terus bertambah 1 selama perulangan

Mengisi Array itemDt baris ke i dan kolom ke j dengan isi Array A baris ke i dan kolom ke j

Parsing Parsing Parsing Comment Comment Comment Comment Comment

Deklarasi method getNBaris bertipe integer dan bersifat public Mengembalikan nilai dari nBaris

Parsing

Deklarasi method getNKolom yang bertipe integer dan bersifat public Mengembalikan nilai nKolom

Parsing

Deklarasi method getItem bertipe double dan bersifat public juga memiliki parameter idB dan idK yang keduanya bertipe integer

Mengembalikan nilai dari Array itemDt yang baris dan kolom tergantung nilai dari parameter idB dan idK

Parsing

Deklarasi method setItem yang tidak mengembalikan nilai dan bersifat public juga memiliki parameter idB dan idK bertipe integer juga dt bertipe double

Memberi nilai Array itemDt yang baris dan kolom tergantung nilai dari parameter idB dan idK dengan nilai dari parameter dt

Parsing Comment Comment Comment Comment Comment Comment Comment

Deklarasi method tambah bertipe Matrik dan bersifat public static juga memiliki parameter A dan B yang bertipe Matrik

Deklarasi variabel x bertipe Matrik dengan nilai awal null Deklarasi variabel plus bertipe double

Nilai Variabel x bertipe Matrik sama dengan nilai dari constructor yg parameternya diisi dengan A.getNBaris(), A.getNKolom()

Deklarasi fungsi if yang jika nilai A.getNBaris = B.getNBaris() dan nilai A.getNKolom = B.getNKolom() maka

(19)

75

76 77

78 79 80 81 83 85 86 87 88 89 90 91 92 93 94

95 96 97 98

99

100

101

102 103

104 105 106 107 109 110 111 112 113 114

A.nBaris dan i akan bertambah 1 selama perulangan

Deklarasi perulangan for yang dimulai dari nilai j = 0 dan akan terus berulang jika j < A.nKolom dan j akan bertambah 1 selama perulangan

Pemberian nilai variabel plus dengan nilai dari A.getItem(i,j) + B.getItem(i, j)

Variabel x memanggil method setItem yang mana akan memberi nilai Array yang barisnya tergantung nilai i dan kolomnya tergantung nilai j kemudian diisi dengan nilai dari variabel plus

Parsing Parsing Parsing

Mengembalikan nilai dari x Parsing

Comment Comment Comment Comment Comment Comment Comment Comment Comment

Deklarasi method VektorKaliMatrik bertipe Larik dan bersifat public static juga memiliki parameter L bertipe Larik dan M bertipe Matrik

Deklarasi Objek lhasil bertipe Larik dan bernilai null Deklarasi Objek lkolom bertipe Larik dan bernilai null

Deklarasi fungsi if yang jika L.getSize() = M.getNBaris() maka

Nilai Objek lhasil sama dengan nilai dari constructor yang diberi parameter dengan isi M.getNKolom()

Deklarasi perulangan for yang mana dimulai dari i = 0 dan akan terus berulang selama nilai i < M.getNKolom dan i akan terus bertambah 1 selama perulangan

Nilai Objek lkolom sama dengan nilai dari Objek M yang memanggil method getKolom dan diberi parameter i

Deklarasi variabel hasil bertipe double dengan nilai sama dengan kelas Larik yang memanggil method LarikKaliLarik dengan parameter L, dan lkolom

Mencetak dengan println dengan isi nilai dari variabel hasil

Objek lhasil memanggil method isiItem dengan parameter i, dan hasil yang telah diubah tipenya menjadi integer

Parsing Parsing

Mengembalikan nilai dari lhasil Parsing

(20)

115

116

118

119

120

121 122 123 124 126 127 128 129 130 131 132

133

134

135

136

137 138 139 141 142 143 144 145 146 147

148

149

150

Deklarasi method tranpos bertipe Matrik dan bersifat public static juga memiliki parameter A bertipe Matrik

Deklarasi Objek sem dari kelas Matrik dan juga memberi parameter pada constructor dengan isi A.nKolom, dan A.nBaris

Deklarasi perulangan for yang mana dimulai dari i = 0 dan akan terus berulang selama nilai i < A.getNKolom dan i akan terus bertambah 1 selama perulangan

Deklarasi perulangan for yang mana dimulai dari j = 0 dan akan terus berulang selama nilai j < A.getNbaris dan j akan terus bertambah 1 selama perulangan

Objek sem memanggil Array itemDt baris ke i dan kolom ke j kemudain diberi nilai dengan nilai dari Objek A yang memanggil Array itemDt baris ke j kolom ke i

Parsing Parsing

Mengembalikan nilai sem Parsing

Comment Comment Comment Comment Comment Comment

Deklarasi method getBaris bertipe Larik dan bersifat public juga memiliki parameter idBaris bertipe integer

Menginstansiasi objek l dari kelas Larik dan juga memberi constructor parameter dengan isi this.nKolom

Deklarasi perulangan for yang dimulai dari nilai i = 0 dan akan terus berulang jika i < this.nKolom dan i akan bertambah 1 selama perulangan

Deklarasi variabel itemKolom bertipe double dan diberi nilai awal nilai dari this.getItem(idBaris, i)

Objek l memanggil method isiItem yang parameternya diberi nilai dari i, dan juga nilai dari variabel itemKolom yang diubah dari double ke integer

Parsing

Mengembalikan nilai l Parsing

Comment Comment Comment Comment Comment Comment

Deklarasi method getKolom bertipe Larik dan bersifat public juga memiliki parameter idKolom bertipe integer

Menginstansiasi objek l dari kelas Larik dan juga memberi constructor parameter dengan isi this.nBaris

Deklarasi perulangan for yang dimulai dari nilai i = 0 dan akan terus berulang jika i < this.nBaris dan i akan bertambah 1 selama perulangan

(21)

151

152 153 154 156 157 158 159 160 161

162 163

164

165

166 167 168 169 171 173 174 175 176 177 178 179 180

181 182

183 184

185 186

187 188 189

Objek l memanggil method isiItem yang parameternya diberi nilai dari i, dan juga nilai dari variabel itemKolom yang diubah dari double ke integer

Parsing

Mengembalikan nilai l Parsing

Comment Comment Comment Comment Comment

Deklarasi method cetak yang tidak mengembalikan nikai dan bersifat public juga memiliki parameter kom bertipe String

Mencetak dengan println dengan isi nilai dari parameter kom

Deklarasi perulangan for yang dimulai dari nilai i = 0 dan akan terus berulang jika i < this.nBaris dan i akan bertambah 1 selama perulangan

Deklarasi perulangan for yang dimulai dari nilai j = 0 dan akan terus berulang jika j < this.nKolom dan j akan bertambah 1 selama perulangan

Mencetak dengan printf dengan isi this.itemDt[i][j] dengan tambahan %.2f agar hanya akan menampilkan sampai 2 angka dibelakang koma saja

Parsing

Mencetak dengan println tanpa isi dan hanya sebagai pengganti enter Parsing

Parsing

Main method public static void

Deklarasi Objek A,B,C dari kelas Matrik

Membuat array 2 dimensi bertipe double dengan nama data1 dan memberinya nilai Membuat array 2 dimensi bertipe double dengan nama data2 dan memberinya nilai Nilai Objek A sama dengan nilai dari constructor berparameter data1

Nilai Objek B sama dengan nilai dari constructor berparameter data2 Objek A memanggil method cetak dengan parameter “A”

Objek B memanggil method cetak dengan parameter “B”

Nilai Objek C sama dengan nilai dari constructor yang memanggil method tambah dengan parameter A, dan B

Objek C memanggil method cetak dengan parameter “C”

Deklarasi Objek CT dari kelas Matrik dan bernilai sama dengan constructor yang memanggil method tranpos dengan parameter C

Objek CT memanggil method cetak dengan parameter “Tsanpos”

Deklarasi Objek l1 dari kelas Larik dan bernilai Objek C yang memanggil method getBaris dengan parameter 1

Objek l1 memanggil method cetak dengan parameter “Baris ke 1 dari C”

Deklarasi Objek l2 dari kelas Larik dan bernilai constructor yang memanggil method VektorKaliMatrik berparameter l1, dan CT

Objek l2 memanggil method cetak dengan parameter “Hasil kali C.L1” Parsing

(22)

Larik.Java 1

2 3 4

5 6

7

8 9 10

Deklarasi method getItem bertipe double dan bersifat public juga memiliki parameter i bertipe integer

Mengembalikan nilai dari Array itemDt[i] Parsing

Deklarasi method LarikKaliLarik bertipe double dan bersifat static juga memiliki parameter L dan lKolom yang keduanya bertipe Larik

Deklarasi variabel res bertipe double dan bernilai 0

Deklarasi perulangan for yang dimulai dari nilai i = 0 dan akan terus berulang jika i < L.size dan i akan bertambah 1 selama perulangan

Proses perhitungan res = res + (L.getItem(i)*lKolom.getItem(i)) yang hasilnya disimpan dalam variabel res

Parsing

Mengembalikan nilai res Parsing

D.

SCREENSHOT PROGRAM

(23)
(24)

E. KESIMPULAN

Array 2 dimensi adalah sebuah variabel yang menyimpan sekumpulan data yang memiliki tipe sama dan elemen yang akan diakses melalui dua indeks atau subskrip yaitu indeks baris dan indeks kolom.

Pengaksesan Array 2 dimensi sama dengan pengaksesan Array 1 dimensi yaitu dengan menyebutkan indeks baris dan kolom pada Array 2 dimensi seperti contoh berikut :

itemDt [0][1] = 3;

Contoh diatas adalah pemberian Array pada baris indeks ke 0 dan kolom indeks ke 1 dan diberi nilai 3

Pengaplikasian Array 2 dimensi juga sama dengan Array 1 dimensi yaitu dengan cara berikut :

tipeData[ ][ ] namaVariable = new tipeData [jumlahBaris] [jumlahKolom]; atau

Referensi

Dokumen terkait

Tujuan yang ingin dicapai Yayasan Wisnu tahun 2006 diuraikan dalam setiap program kerja, di mana secara umum sama dengan tujuan sebelumnya: 1.. Masyarakat mampu mengelola

Berdasarkan sekilas latar belakang di atas, penulis menyimpulkan sebagai konsep penelitian dan perancangan yang akan dilakukan untuk penulisan skripsi ini adalah dengan judul

Peraturan Pemerintah Nomor 7 Tahun 1977 tentang Peraturan Gaji Pegawai Negeri Sipil (Lembaran Negara Republik Indonesia Tahun 1977 Nomor 11, Tambahan Lembaran Negara

Guru yang mengampu pada jam terakhir menutup kegiatan belajar dengan berdoa 5.. Guru menutup

Adapun yang menjadi rumusan masalah dalam penelitian ini adalah bagaimana hubungan pola konsumsi pangan dengan tingkat kolesterol darah total pada Pegawai Negeri

Beragamnya tipe ekosistem ini sangat mendukung sebagai habitat satwa maupun flora khususnya berbagai jenis tumbuhan paku-pakuan.Tujuan penelitian ini yaitu untuk

Pengujian ini dilakukan untuk mengetahui apakah activity OrderReport dapat berjalan di aplikasi Android. Activity ini berfungsi untuk menampilkan data pesanan dari

SUMBER INFORMASI SERTA PELIMPAHAN HAK CIPTA Dengan ini saya menyatakan bahwa skripsi berjudul Gambaran Darah dan Performa Produksi Ayam Kampung serta Ayam Ras Petelur