Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Array Dua Dimensi Jurusan Teknik Informatika Universitas Ahmad Dahlan 2004.

Presentasi serupa


Presentasi berjudul: "Array Dua Dimensi Jurusan Teknik Informatika Universitas Ahmad Dahlan 2004."— Transcript presentasi:

1 Array Dua Dimensi Jurusan Teknik Informatika Universitas Ahmad Dahlan 2004

2 Pendahuluan Misalkan matriks A berordo 2 x 3 Menggunakan array, setiap elemen matriks A dapat dipetakan menjadi :

3 Konstruksi Tipe Data Matriks C style #define baris 2 #define kolom 2 int matriks[baris][kolom]; C++ style class Matriks { private : int baris, kolom; int A[baris][kolom]; };

4 Memasukkan data Matriks void baca_matriks (int matriks[10][10], int baris, int kolom) { int i,j; for (i=0; i> matriks[i][j]; } Cara mengisi data dilakukan per baris (dengan kolom berjalan/dihabiskan lebih dulu)

5 Tahapan input elemen matriks Perhatikan matriks Untuk i=0, j=0

6 Perhatikan matriks Untuk i=0, j=1

7 Perhatikan matriks Untuk i=0, j=2

8 Mencetak Elemen Matriks void cetak_matriks (const int A[10][10], int baris, int kolom) { int i,j; for (i=0; i

9 Kasus 9.1: Buatlah algoritma dan program untuk menjumlahkan dua buah matriks. Analisis : Syarat penjumlahan 2 matriks : ordonya sama, m baris dan n kolom Misal : A 2x2 ditambah B 2x2. Hasilnya juga merupakan matriks berukuran 2x2 misal matriks C 2x2. Penjumlahan dilakukan elemen demi elemen pada tempat yang sesuai

10 Perhatikan tandanya

11

12

13

14 Algoritma 9.1

15 Kasus 9.2. Buatlah algoritma dan program untuk mengalikan dua buah matriks. Analisis : Syarat dua matriks dapat dikalikan adalah ukuran kolom matriks pertama haruslah sama dengan ukuran baris matriks kedua. Bila A mxp dan B pxn, akan menghasilkan C mxn.

16 Contoh : Untuk m = 2, p = 3, dan n = 1 A 2x3, B 3x1, C 2x1 c 11 diperoleh dari C 11 = a 11 *b 11 +a 12 *b 21 +a 13 *b 31

17 Bila : i berjalan dari 1 sampai m (banyak baris) k berjalan dari 1 sampai p (banyak elemen perkalian dalam) j berjalan dari 1 sampai n (banyak kolom) Maka diperoleh 3 loop : for i  1 to baris do for j  1 to kolom do mat_kali[i,j]  0 for k  1 to barkol do mat_kali[i,j] menyatakan matriks hasil pada elemen ke(i,j). Oleh karena merupakan kumulatif penjumlahan maka diawali nilai dengan 0 (dan hanya dipengaruhi oleh variabel I dan j).

18 Algoritma 9.2.

19 Kasus 9.3. Buatlah algoritma untuk menyelesaikan sistem persamaan linier Misalkan sistem persamaan linier yang diberikan sebagai berikut :

20 Status awal

21 Langkah I kurangi baris ke-2 dengan (1)x baris pertama diperoleh :

22 Langkah II kurangi baris ke-3 dengan (1)x baris pertama diperoleh :

23 Langkah III kurangi baris ke-3 dengan (2)x baris ke-2 diperoleh :

24 Langkah IV : dikembalikan pada bentuk persamaan

25 Langkah terakhir : substitusi balik Diperoleh :

26 Output : Penyelesaian sistem persamaan linier semula adalah :

27 Membentuk matriks eselon baris for (i = 0; i < banyak - 1; i++) for (k = i + 1; k < banyak; k++) { temp = koef.A[k][i] / koef.A[i][i]; // memanipulasi matriks for (j = i + 1; j < banyak; j++) koef.A[k][j] -= temp * koef.A[i][j]; // memanipulasi vektor konstanta konstanta.elemen[k] -= temp * konstanta.elemen[i]; koef.A[k][i] = 0.0;

28 Substitusi balik // banyak menyatakan banyaknya elemen vektor for (i = banyak-1; i >= 0; i--) { s = konstanta.elemen[i]; for (j = i + 1; j < banyak; j++) // konstanta dikurangi dengan nilai x j yang telah diperoleh s -= koef.A[i][j] * konstanta.elemen[j]; X.elemen[i] = s / koef.A[i][i];

29 Tugas : Diberikan suatu matriks berordo n. Buatlah algoritma dan program untuk mencetak matriks identitas berodo n. Petunjuk : Pelajari ciri matriks identitas ???

30 Buatlah algoritma dan program untuk menghasilkan transpose suatu matriks Petunjuk : Buat contoh kasus. Misalkan matriks berordo 2x3. Kemudian apa yang terjadi bila ditranspose. ???


Download ppt "Array Dua Dimensi Jurusan Teknik Informatika Universitas Ahmad Dahlan 2004."

Presentasi serupa


Iklan oleh Google