Witam, mam taki problem, napisalem taki programik do obliczeń na macierzach,(troche w nim bałaganu) ale potrzebuje mniej wiecej to samo zrobić na klasach, i tu jest problem bo nie bardzo je rozumiem. Jak mój program wpakowac do klasy, jak sie za to zabrac, te konstruktory itp:
A oto ten mój programik:
#include <iostream.h>
#include <conio.h>
#include<iomanip>
//--------------------------------------------------------------------------
main()
{
//--------------------------------------------------------------------------
/ustalenie wielkosci i tworzenie macierzy kwadratowych/
int w, k, D;
cout<<"Podaj wielkosc macierzy kwadratowych A i B: ";
cin>>w;
k=w;
float **A;
A = new float *[w];
cout<<"\n\n-------------------\n";
cout<<"Tworzenie macierzyA:\n";
cout<<"-------------------\n\n";
for(int i=0; i<w; i++)
{
A[i] = new float [k];
for(int j=0; j<k; j++)
{
cout<<"Podaj wartosc ["<<(i+1)<<","<<(j+1)<<"]: ";
cin>>A[i][j];
}
}
for(int i=0; i<w; i++ , cout<<endl)
for(int j=0; j<k; j++)
cout<<setw(3)<<A[i][j];
float **B;
B = new float *[w];
cout<<"\n\n-------------------\n";
cout<<"Tworzenie macierzyB:\n";
cout<<"-------------------\n\n";
for(int i=0; i<w; i++)
{
B[i] = new float [k];
for(int j=0; j<k; j++)
{
cout<<"Podaj wartosc ["<<(i+1)<<","<<(j+1)<<"]: ";
cin>>B[i][j];
}
}
for(int i=0; i<w; i++ , cout<<endl)
for(int j=0; j<k; j++)
cout<<setw(3)<<B[i][j];
/---------------------------------------------------------------------------/
cout<<"zerwanie macierzy C"<<endl;
float **C;
C = new float *[w];
for(int i=0; i<w; i++)
{
C[i] = new float [k];
for(int j=0; j<k; j++)
{
C[i][j]=0;
}
}
for(int i=0; i<w; i++ , cout<<endl)
for(int j=0; j<k; j++)
cout<<setw(3)<<C[i][j];
//---------------------------------------------------------
cout<<"wyswietlanie macierzy C=A+B"<<endl;
for(int i=0; i<w; i++, cout<<endl)
for(int j=0; j<k; j++)
C[i][j]=A[i][j]+B[i][j];
for(int i=0; i<w; i++ , cout<<endl)
for(int j=0; j<k; j++)
cout<<setw(3)<<C[i][j];
//---------------------------------------------------------
cout<<"wyswietlanie macierzy C=A*B"<<endl
<<endl ;
cout<<"wyzerowanie macierzy C:"<<endl;
for(int i=0; i<w; i++ , cout<<endl) //zerowanie
for(int j=0; j<k; j++)
C[i][j]=0;
cout<<endl;
for(int i=0; i<w; i++ , cout<<endl) //
for(int j=0; j<k; j++)
cout<<setw(3)<<C[i][j];
cout<<"macierz przemnożona:"<<endl;
//Mnozenie macierzy
for(int i=0;i<w;i++)//wiersze macierzy A
for(int j=0;j<k;j++)//kolumny macierzy B
for(int s=0;s<k;s++)//kolumny macierzy A=wiersze macierzy B
C[i][j]=C[i][j]+A[i][s]*B[s][j];
for(int i=0; i<w; i++ , cout<<endl)
for(int j=0; j<k; j++)
cout<<setw(3)<<C[i][j];
getch();
}
//---------------------------------------------------------------------------