Mir Ali Babaei جمعه 19 خرداد 1391 09:06 نظرات ()
دترمینان، در جبر خطی به تابعی گفته می‌شود که هر ماتریس مربعی را (به عبارتی هر ماتریس n\times n را) به یک عدد نسبت می‌دهد. دترمینان بیشتر برای تعیین، معکوس ماتریسها استفاده می‌شود، به طوری که اگر دترمینان ماتریسی مخالف صفر باشد، آنگاه آن ماتریس معکوس‌پذیر است. از این رو از طریق دترمینان می‌توان مقادیر ویژه یک ماتریس و یا به عبارت بهتر یک نگاشت خطی را تعیین کرد. مثال دیگر، این توابع، دترمینان ژاکوبی است که در روش تغییر متغیر برای انتگرالهای چند بعدی، مورد استفاده قرار می‌گیرد.

« كد برنامه : 1291 »

مسئله: 
برنامه ای بنویسید كه ماتریس حداكثر 4×4 را گرفته و بصورت بازگشتی دترمینان آن را حساب كند.




رایگان

جهت مشاهده کردن کد به ادامه مطلب مراجعه کنید.




                                           



برای مشاهده نحوه كار برنامه دانلودش كنید
كد:


#include<iostream.h>
#include<stdio.h>
#include<conio.h>
#include<math.h>
#include<process.h>


 int determinant(int[5][5],int);
 void read(int[5][5],int);
 void print(int[5][5],int);
void main()
{
    int a[5][5],l,n;
    int result;
    clrscr();
    cout<<"matrise darkhastye khod ra vared konid  (bishtarin halat 4X4):\n";
    cin>>l>>n;
    if(l!=n)
    {
        cout<<"pozesh, fagat matris morabaei (yani nxn)\n";
         
    }
    read(a,n);
    result=determinant(a,n);
    print(a,n);
    cout<<"determinante matrise shoma :"<<result;
    getch();
}
void read(int b[5][5],int m)
{
 cout<<"dakhele matris ra be sorate satri por konid(satre aval- satre dovom ,...\n";
 for(int i=0;i<m;i++)
 for(int j=0;j<m;j++)
 cin>>b[i][j];
}


void print(int b[5][5], int m)
{
 clrscr();
 cout<<"Matrix is:";
 for(int i=0;i<m;i++)
 {
  cout<<"";
  for(int j=0;j<m;j++)
    cout<<" "<<b[i][j];
 }
}


int determinant(int b[5][5],int m)
{
 int i,j,sum=0,c[5][5];
 if(m==2)
  {
    sum=b[0][0]*b[1][1]-b[0][1]*b[1][0];
    return sum;
  }
for(int p=0;p<m;p++)
 {
  int h=0,k=0;
  for(i=1;i<m;i++)
  {
    for(j=0;j<m;j++)
    {
    if(j==p)
    continue;
    c[h][k]=b[i][j];
    k++;
    if(k==m-1)
     {
        h++;
        k=0;
     }


    }
  }


  sum=sum+b[0][p]*pow(-1,p)*determinant(c,m-1);
 }
 return sum;
}









برنامه ی محاسبه ی دترمینان.
برنامه ی محاسبه ی دترمینان ماتریس 4×4
برنامه ی محاسبه ی دترمینان ماتریس مربع.
محاسبه ی دترمینان در c++.
تابع بازگشتی دترمینان.
برنامه ی دترمینان در سی پلاس پلاس بصورت بازگشتی.
برنامه ی محاسبه ی دترمینال ماتریس 4×4
برنامه ی محاسبه ی دترمینال ماتریس مربع.