#include <iostream>
using namespace std;
//2x2 kare matrisinin tersinin alınması//
main()
{
//Gerekli olan veriler giriliyor//
int i,j;
float sakla;
float carpim1=1,carpim2=1;
float matris[2][2];
float carpan;
/*Matris elemanları buradaki döngüyle giriliyor*/
for(i=0;i<2;i++)
{
for(j=0;j<2;j++)
{
printf("%dx%d elemanini giriniz:",i+1,j+1);
scanf("%f",&matris[i][j]);
}
}
printf("\n\nMatris\n");
/*Olusturulan matris burada ekrana yazdırılır */
for(i=0;i<2;i++)
{
for(j=0;j<2;j++)
{
printf("%3.2f ",matris[i][j]);
}
printf("\n");
}
/*Burada matrisin tersi alınmaya baslarken 1/(ad-bc) formülündeki ad ve bc bulunuyor*/
for(i=0;i<2;i++)
{
for(j=0;j<2;j++)
{
if(i==j)
{
carpim1=carpim1*matris[i][j]; /* carpim1=a*d */
}
else
{
carpim2=carpim2*matris[i][j]; /* carpim2=b*c */
}
}
}
carpan=1/(carpim1-carpim2); /*carpan=1/(ad-bc)*/
/*Burada a ve d yer degistiriliyor ve b ve c de eksili hale geliyor */
for(i=0;i<2;i++)
{
for(j=0;j<2;j++)
{
if(i==j)
{
sakla=matris[i][j];
matris[i][j]=matris[i+1][j+1];
matris[i+1][j+1]=sakla;
}
else
{
matris[i][j]=-1*matris[i][j];
}
}
}
/*Son olarak da formül gereği oluşan matris ve carpan değişkeni çarpılıyor*/
printf("\n\nMatrisin Tersi\n");
for(i=0;i<2;i++)
{
for(j=0;j<2;j++)
{
printf("%3.2f ",carpan*matris[i][j]);
}
printf("\n");
}
return 0;
}
Hiç yorum yok:
Yorum Gönder