سلام
اگر شما دنبال الگوریتم ریاضی یافتن دترمینان ماتریس n*n هستید (نوشتن برنامش که ساده میشه ):
اگر A یک ماتریس n*n باشه :
دترمینان گرد ردیف k ام {det [A]=S{[(-1)^(k+j)]*(a kj)*det [M kj] , j =1 to n
یا گرد ستون kام { det [A]=S{[(-1)^(i+k)]*(a ik)*det [M ik] , i =1 to n
که k میتواند هر عدد درستی میان 1 تا n باشد//// a ij درایه ی ردیف iام ستون jام //// det : دترمینان /// و ماتریس M ij همان ij مین کهاد ماتریس A است
که از برداشتن ردیف i ام و ستون j ام بدست می آید . یعنی یک دترمینان n*n را بصورت مجموع چند دترمینان (n-1)*(n-1) نوشتیم (بازگشتی)
این رابطه ی بازگشتی را در C بصورت یک تابع بازگشتی پیاده کنیم که شرط خروج آن زمانیست که به دترمینان 2*2 برسیم که آن هم مشخص است .
ماتریس وارون هم میشود:
[A -1] = (1/det[A])* [ cof A]
که [cof A] ماتریس همسازه ها نامیده میشود که ماتریسی است n*n از همسازه های ماتریس A
ij مین همسازه ی A هست
:[/CENTER]A ij= (-1)^(i+j)]*det [Mij][/CENTER]