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

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

Apps Script untuk Cetak Sertifikat

Game TicTacToe dengan Greenfoot

Eliminasi Gauss-Jordan untuk Invers Matrix dengan Java

Bagaimana Mendapatkan Penghasilan dari Aplikasi Android

Honeycomb Style Wallpaper dengan HTML5 Canvas

Robot Forex Martingale Gratis

Ketika Pengelola Basis Data Terabaikan

Algorithma FPB dan KPK dengan Javascript

Pengetahuan Tentang Hak Cipta untuk Mendapatkan Income dari Internet