Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Jurusan Teknik Informatika Universitas Ahmad Dahlan 2004

Presentasi serupa


Presentasi berjudul: "Jurusan Teknik Informatika Universitas Ahmad Dahlan 2004"— Transcript presentasi:

1 Jurusan Teknik Informatika Universitas Ahmad Dahlan 2004
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<baris; i++) for (j=0; j<kolom; j++) cin >> 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<baris; i++) { for (j=0; j<kolom; j++) cout << A[i][j] << “ “; // jarak antar elemen cout << endl; // baris berikutnya } Strateginya : pada suatu baris (cout pertama) antar elemen dipisahkan spasi. Untuk mencetak baris berikutnya digunakan cout kedua.

9 Syarat penjumlahan 2 matriks : ordonya sama, m baris dan n kolom
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 : A2x2 ditambah B2x2. Hasilnya juga merupakan matriks berukuran 2x2 misal matriks C2x2. Penjumlahan dilakukan elemen demi elemen pada tempat yang sesuai

10 Perhatikan tandanya

11 Perhatikan tandanya

12 Perhatikan tandanya

13 Perhatikan tandanya

14 Algoritma 9.1

15 Bila Amxp dan Bpxn, akan menghasilkan Cmxn.
Kasus 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 Amxp dan Bpxn, akan menghasilkan Cmxn.

16 Contoh : Untuk m = 2, p = 3, dan n = 1 A2x3, B3x1, C2x1
c11 diperoleh dari C11= a11*b11+a12*b21+a13*b31

17 Bila : Maka diperoleh 3 loop :
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 Misalkan sistem persamaan linier yang diberikan sebagai berikut :
Kasus 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 xj yang telah diperoleh s -= koef.A[i][j] * konstanta.elemen[j]; X.elemen[i] = s / koef.A[i][i];

29 Pelajari ciri matriks identitas
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 "Jurusan Teknik Informatika Universitas Ahmad Dahlan 2004"

Presentasi serupa


Iklan oleh Google