Class yapisi ile matris çarpimi
Kod:
#define MAX 10
class matrix
{
int m1[MAX][MAX],m2[MAX][MAX],c[MAX][MAX];
int i,j,k,sayi;
public:
void matris_al(int);
void matris_yaz(int);
void matris_carp(int);
void matris_sifir(int);
};
void matrix::matris_al(int a)
{
cout<<"1. matrisi girin:"<<"\n\n";
for(i=0; i<a; i++)
{
for(j=0; j<a; j++)
{
cout<<(i+1)<<". satir "<<(j+1)<<". sutun:";
cin>>sayi;
m1[i][j]=sayi;
}
}
clrscr();
cout<<"2. matrisi girin:"<<"\n\n";
for(i=0; i<a; i++)
{
for(j=0; j<a; j++)
{
cout<<(i+1)<<". satir "<<(j+1)<<". sutun:";
cin>>sayi;
m2[i][j]=sayi;
}
}
}
void matrix::matris_yaz(int a)
{
cout<<"carpim matrisi:"<<endl;
for(i=0; i<a; i++)
{
for(j=0; j<a; j++)
{
cout<<c[i][j]<<"\t";
}
cout<<"\n";
}
}
void matrix::matris_sifir(int a)
{
for(i=0; i<a; i++)
{
for(j=0; j<a; j++)
{
c[i][j]=NULL;
}
}
}
void matrix::matris_carp(int a)
{
for(i=0; i<a; i++)
{
for(j=0; j<a; j++)
{
for(k=0; k<a; k++)
{
c[i][j]+=m1[i][k]*m2[k][j];
}
}
}
}
main()
{
int a;
char ch;
do
{
gel:
clrscr();
cout<<"kaca kaclik matris:";
cin>>a;
if(a<2)
{
printf("2'den kucuk giremessin..");goto gel;
}
clrscr();
matrix mt;
mt.matris_sifir(a);
mt.matris_al(a);
clrscr();
mt.matris_carp(a);
mt.matris_yaz(a);
getch();clrscr();
cout<<"devam etmek icin e'ye bas...";
}while((ch=getche())=='e') ;
}