Array 2 Dimensi banyak di gunakan untuk membuat matriks atau data tabel, sedangakan Array 1 dimensi di gunakan untuk membuat hasil atau data yang berkoordinat X saja. Dalam postingan kali ini Array 2 dimensi di gunakan untuk menampung nilai-nilai dari suatu komponen persamaan matematika. Sedangkan Array 1 dimensi di gunakan untuk menampung hasil atau nilai dari persamaan.
#include <cstdlib>
#include <iostream>
using namespace std;
class xyz{ // pendeklarasian class xyz
public: // pendeklarsian fungsi xyz, masuk, proses dan keluar
xyz();
void masuk();
void proses();
void keluar();
private: // pendeklarasian variabel a, b dan x,y,z
float a[3][3];
float b[3];
float x,y,z;
};
xyz::xyz(){ // pendeskripsian fungsi xyz
cout<<"Mencari Nilai x, y, z Dari 3 Persamaan\n\n";
}
void xyz::masuk(){ // pendeskripsian fungsi masuk for(int i=0; i<3; i++){cout<<"Persamaan ke -"<<i+1<<":"<<endl;
cout<<"komponen x : ";
cin>>a[i][0]; // memasukkan nilai x dari suatu persamaan
cout<<"komponen y : ";
cin>>a[i][1]; // memasukkan nilai y dari suatu persamaan
cout<<"komponen z : ";
cin>>a[i][2]; // memasukkan nilai z dari suatu persamaan
cout<<"hasil : ";
cin>>b[i]; // memasukkan hasil persamaan dari suatu persamaan
cout<<endl;
}
// menampilkan persamaan
cout<<"\nPersamaanya :"<<endl; for(int i=0; i<3; i++){cout<<a[i][0]<<"x + "<<a[i][1]<<"y + "<<a[i][2]<<"z = "<<b[i]<<endl;}
}
void xyz::proses(){ // pendeklarasian fungsi proses
for(int i=1;i>0;i--){ // pengulangan di mulai dari i=1 sampai dengan i>0
for(int j=0;j<=2;j++){
a[i][j] = a[i][j] - a[i-1][j]; // pemberian nilai a
}
}
for(int i=2;i>1;i--){ // pengulangan di mulai dari i=2 sampai i>1
for(int j=0;j<=2;j++){
a[i][j] = a[i][j] - a[i-2][j];
}
}
for(int i=2;i>1;i--){ // pengulangan di mulai dari i=2 sampai i>1
for(int j=0;j<=2;j++){
a[i][j] = a[i][j] - (2*a[i-1][j]);
}
}
b[1] = b[1] - b[0]; // pemberian nilai b
b[2] = b[2] - b[0];
b[2] = b[2] - (2*b[1]);
z = b[2]/a[2][2]; // pemberian nilai pada variabel z
y = b[1] - (a[1][2]*z); // pemberian nilai pada variabel y
x = b[0] - (a[0][1]*y) - (a[0][2]*z); // pemberian nilai pada variabel x
}
void xyz::keluar(){ // pendeskripsian fungsi keluar
cout<<endl;
cout<<"Nilai x = "<<x<<endl;
cout<<"Nilai y = "<<y<<endl;
cout<<"Nilai z = "<<z<<endl;
cout<<endl<<endl;
}
int main(int argc, char *argv[])
{
xyz a;
a.masuk();
a.proses();
a.keluar();
system("PAUSE");
return EXIT_SUCCESS;
}
