Program penjumlahan matrik dengan pointer

karena untuk menghindari copi paste yang akan membodohkan masyarakan jadi disini akan diberikan fungsi fungsinya saja.. mainnya desain sendiri..
1. fungsi untuk menginputkan matriks dengan pointer :

void read(double **a)
{
cout << "Masukkan "<<(xsize*ysize)<<" angka, "<<ysize<<" per baris:\n";
for (int i=0; i<xsize; i++)
{
cout << "Baris ke " << (i+1) << ": ";
for (int j=0; j<ysize; j++)
{
cin >> *(*(a+i)+j);
}
}
}


deklarasi pointer yang dikirim ke fungsi ini dapat dilakukan pada fungsi pemanggilnya..misal pada main;
xsize=banyak baris;
ysize=banyak kolom;
disini sya deklarsikan variabel xsize dan ysizenya sebagai variabel global(sudah tau lah)..kalau mw yang variabel dikirim-kirim dari fungsi lain silahkan menambahkan pada argumennya.

2. fungsi untuk mencetak matriks dengan pointer
void print(double **a)
{
for (int i=0; i<xsize; i++)
{
    for (int j=0; j<ysize; j++)
cout << " " << *(*(a+i)+j);
cout << endl;
}
}
 3. fungsi untuk menjumlahkan dan mengurangkan matriks

  void penjumlahan(double **a, double **b, double **c)
{
for (int i=0; i<xsize; i++)
   {
for (int j=0; j<ysize; j++)
      {
*(*(c+i)+j)=(*(*(a+i)+j))+ (*(*(b+i)+j));
      }
}
}

void pengurangan(double **a, double **b, double **c)
{
for (int i=0; i<xsize; i++)
   {
for (int j=0; j<ysize; j++)
      {
*(*(c+i)+j)=(*(*(a+i)+j))- (*(*(b+i)+j));
      }
}
}

silahkan berkreasi.. jika ada pertanyaan silahkan dicoment..thankz.^^

Comments

  1. saya masih belum memahami hal diatas .....bisakah dibantu dng contoh dimasukkan dng system programnya.......
    kbtulan waktunya mepet sangat ini

    ReplyDelete

Post a Comment