Wednesday, January 5, 2011

C Programs : Determinant of a matrix

A program to find the determinant of a matix is given below.


#include <stdio.h>   
main()
{
 int a[3][3],b[3][3],c[10];
 float d[3][3],det;
 int i,j,k,m,t,l;
 printf("enter 9 elements : ");
 for (i=0;i<3;++i)
 {
  for(j=0;j<3;j++)
  scanf("%d",&a[i][j]);
 }
  for(l=0;l<3;l++)
  {
  for(m=0;m<3;m++)
   {
    t=0;
    for(i=0;i<3;i++)
    {
      for(j=0;j<3;j++)
      {
        if(i!=l&&j!=m)
        {
          c[t]=a[i][j];
          t++;
        }
      }
    }
    b[l][m]=(c[0]*c[3])-(c[1]*c[2]);
   }
 }
 printf("\nmatrix a : ");
 for (i=0;i<3;i++)
 {
   printf("\n");
   for(j=0;j<3;j++)
   printf("%d\t",a[i][j]);
 }
 printf("\nadjoint matrix :");
 for (i=0;i<3;i++)
 {
   printf("\n");
   for(j=0;j<3;j++)
   printf("%d\t",b[i][j]);
 }
 for( i=0;i<3;i++)
 {
  for(j=0;j<3;j++)
  {
   if((i+j)==1||(i+j)==3)
   a[i][j]=a[i][j]*(-1);
  }
 }
 printf("\n values of a :");
 for(i=0;i<3;i++)
 {
   printf("\n");
   for(j=0;j<3;j++)
   printf("%d\t",a[i][j]);
 }
 for(i=0;i<3;i++)
 {
  det=0;
  for(j=0;j<3;j++)
  det=det+a[i][j]*b[i][j];
  if(i==0)
  printf(" \ndet = %f" ,det);
 }
}

1 comments:

Anonymous said...

it is too difficult program, pls make it short

Post a Comment

Twitter Delicious Facebook Digg Stumbleupon Favorites More

 
Design by Free WordPress Themes | Bloggerized by Lasantha - Premium Blogger Themes | coupon codes