Algorithma Perkalian Pangkat Matrix dengan C++


Seorang pengguna aplikasi Matrix Inverse penulis, meminta bantuan untuk menyelesaikan problem matematikanya, yaitu mengenai perpangkatan matrix.

Pengguna itu bertanya, bagaimana algorithma perkalian pangkat matrix.

Misalnya jika mempunyai matrix A dengan nilai sebagai berikut:


Bagaimana jika dipangkatkan tiga, menjadi A3.

Karena pengguna meminta menggunakan bahasa C++, berikut ini penulis tuliskan kode C++, implementasi algorithma perpangkatan matrix tersebut:

#include <iostream> 
 
using namespace std; 
 
int main() 
{ 
    int row1, col1, n; 
 int **c,**d; 

 int a[2][2]={ 
   {3,2}, 
   {4,-2} 
 }; 
 
 n = 3; 
 col1 = 2; 
 row1=col1; 

 c = new int*[row1]; 
 d = new int*[row1]; 
 for(int i = 0; i < row1; i++) 
 { 
  c[i] = new int[col1]; 
  d[i] = new int[col1]; 
  for(int j = 0; j < col1; j++) 
  { 
   c[i][j] = a[i][j]; 
   d[i][j] = 0; 
  } 
 } 

 for(int b = 0; b < n-1; b++) 
 { 
  // Multiplication 
  for(int i = 0; i < row1; i++) 
  { 
   for(int j = 0; j < col1; j++) 
   { 
       int hsl=0; 
    for(int k = 0; k < col1; k++) 
    { 
     hsl+=c[i][k] * a[k][j]; 
    } 
    d[i][j]=hsl; 
   } 
  } 
  // Multiplication 
  for(int i = 0; i < row1; i++) 
  { 
   for(int j = 0; j < col1; j++) 
   { 
       c[i][j]=d[i][j]; 
   } 
  } 
 } 
 
 // Output matrix in StringGrid2 (SG2) 
 for(int i = 0; i < row1; i++) 
 { 
  for(int j = 0; j < col1; j++) 
  { 
     cout<<c[i][j]<<" "; 
  } 
  cout<<endl; 
 } 
 
    return 0; 
} 

Semoga bermanfaat.

Komentar



Postingan populer dari blog ini

Apps Script untuk Cetak Sertifikat

Anak Usia Sekolah Hendaknya tidak hanya Bermain Game Online

Seberapa Hebatkah Orang Dalam

Review Pengguna yang Berperilaku Konsumtif

Dibalik Penerimaan CPNS 2018

Ngobrol Penghabisan Dana Akhir Tahun

Perguruan Tinggi, Investasi atau Formalitas Semata?

Menggambar Lingkaran Menyala dengan Efek Shadow

Tip Memilih Notaris

Kaidah Baku untuk Konsistensi Data (PT, Tbk, Pty., & Ltd.)