Mengalikan Matriks dengan Ukuran Bervariasi

Aljabar Linear, 30.10.2012, T.Komputer

Jika pada pertemuan yang lalu kita mengalikan matriks ukuran 2×3 dengan 3×2, sekarang kita akan mengalikan matriks yang ukurannya tergantung dari pengguna asalkan tidak menyalahi kaidah perkalian (jumlah kolom matriks kiri harus sama dengan jumlah baris matriks kanan). Gunakan listing berikut ini (jika mengkopi – paste, jangan lupa simbol petik ” harus diketik ulang):

  • #include<stdio.h>
  • #include<iostream.h>
    • void main()
    • {
    • int i,j,A[5][5],B[5][5],ia,ja,ib,jb,a,b,c,X[5][5];
    • //menginput matriks A
    • cout<<“Masukkan Jumlah Baris Matriks A : “;
    • cin>>ia;
    • cout<<“Masukkan Jumlah Kolom Matriks A : “;
    • cin>>ja;
    • cout<<“Masukkan Matriks A \n”;
    • for(i=0;i<ia;i++)
    • {
      • for(j=0;j<ja;j++)
      • {
        • cout<<“Masukkan Elemen Matriks ke “<<(i+1)<<“,”<<(j+1)<<” :”;
        • cin>>A[i][j];
      • }
    • }
    • //menginput matriks B
    • cout<<“Masukkan Jumlah Baris Matriks B : “;
    • cin>>ib;
    • cout<<“Masukkan Jumlah Kolom Matriks B : “;
    • cin>>jb;
    • cout<<“Masukkan Matriks A \n”;
    • for(i=0;i<ib;i++)
    • {
      • for(j=0;j<jb;j++)
      • {
        • cout<<“Masukkan Elemen Matriks ke “<<(i+1)<<“,”<<(j+1)<<” :”;
        • cin>>B[i][j];
      • }
    • }
    • //menampilkan matriks A
    • cout<<“Matriks A = \n”;
    • for(i=0;i<ia;i++)
    • {
      • for(j=0;j<ja;j++)
      • {
        • cout<<A[i][j]<<” “;
      • }
      • cout<<“\n”;
    • }
    • //menampilkan matriks B
    • cout<<“Matriks B = \n”;
    • for(i=0;i<ib;i++)
    • {
      • for(j=0;j<jb;j++)
      • {
        • cout<<B[i][j]<<” “;
      • }
      • cout<<“\n”;
    • }
    • //mentraspose matriks A
    • cout<<“Transport matriks A : “<<“\n”;
    • for(j=0;j<ja;j++)
    • {
      • for(i=0;i<ia;i++)
      • {
        • cout<<A[i][j]<<” “;
      • }
      • cout<<“\n”;
    • }
    • //Mengalikan Matriks A dengan B
    • cout<<“Hasil kali Matriks A dengan B :”<<“\n”;
    • cout<<“Ukuran Matriks = “<<ia<<“x”<<jb<<“\n”;
    • for(a=0;a<ia;a++)
    • {    for(b=0;b<jb;b++)
      • {X[a][b]=0;
      • for(c=0;c<ja;c++)
      • {
      • X[a][b]=X[a][b]+A[a][c]*B[c][b];
      • }
      • }
    • }
    • //Menampilkan Matriks X
    • for(a=0;a<ia;a++)
    • {    for(b=0;b<jb;b++)
      • {
      • cout<<X[a][b]<<” “;
      • }
      • cout<<“\n”;
    • }
    • }

Setelah dijalankan akan dihasilkan perkalian matriks dengan ukuran yang ditentukan oleh pengguna program.

Iklan

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout /  Ubah )

Foto Google+

You are commenting using your Google+ account. Logout /  Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout /  Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout /  Ubah )

w

Connecting to %s