System of Linear Equations in three variables using Cramer 's Rule | C # program to calculate solutions of linear equations using cramer 's rule ; This functions finds the determinant of Matrix ; This function finds the solution of system of linear equations using cramer 's rule ; Matrix d using coeff as given in cramer 's rule ; Matrix d1 using coeff as given in cramer 's rule ; Matrix d2 using coeff as given in cramer 's rule ; Matrix d3 using coeff as given in cramer 's rule ; Calculating Determinant of Matrices d , d1 , d2 , d3 ; Case 1 ; Coeff have a unique solution . Apply Cramer 's Rule ; double z = D3 / D ; calculating z using cramer 's rule ; Case 2 ; Driver Code ; storing coefficients of linear equations in coeff matrix
using System ; class GFG { static double determinantOfMatrix ( double [ , ] mat ) { double ans ; ans = mat [ 0 , 0 ] * ( mat [ 1 , 1 ] * mat [ 2 , 2 ] - mat [ 2 , 1 ] * mat [ 1 , 2 ] ) - mat [ 0 , 1 ] * ( mat [ 1 , 0 ] * mat [ 2 , 2 ] - mat [ 1 , 2 ] * mat [ 2 , 0 ] ) + mat [ 0 , 2 ] * ( mat [ 1 , 0 ] * mat [ 2 , 1 ] - mat [ 1 , 1 ] * mat [ 2 , 0 ] ) ; return ans ; } static void findSolution ( double [ , ] coeff ) { double [ , ] d = { { coeff [ 0 , 0 ] , coeff [ 0 , 1 ] , coeff [ 0 , 2 ] } , { coeff [ 1 , 0 ] , coeff [ 1 , 1 ] , coeff [ 1 , 2 ] } , { coeff [ 2 , 0 ] , coeff [ 2 , 1 ] , coeff [ 2 , 2 ] } , } ; double [ , ] d1 = { { coeff [ 0 , 3 ] , coeff [ 0 , 1 ] , coeff [ 0 , 2 ] } , { coeff [ 1 , 3 ] , coeff [ 1 , 1 ] , coeff [ 1 , 2 ] } , { coeff [ 2 , 3 ] , coeff [ 2 , 1 ] , coeff [ 2 , 2 ] } , } ; double [ , ] d2 = { { coeff [ 0 , 0 ] , coeff [ 0 , 3 ] , coeff [ 0 , 2 ] } , { coeff [ 1 , 0 ] , coeff [ 1 , 3 ] , coeff [ 1 , 2 ] } , { coeff [ 2 , 0 ] , coeff [ 2 , 3 ] , coeff [ 2 , 2 ] } , } ; double [ , ] d3 = { { coeff [ 0 , 0 ] , coeff [ 0 , 1 ] , coeff [ 0 , 3 ] } , { coeff [ 1 , 0 ] , coeff [ 1 , 1 ] , coeff [ 1 , 3 ] } , { coeff [ 2 , 0 ] , coeff [ 2 , 1 ] , coeff [ 2 , 3 ] } , } ; double D = determinantOfMatrix ( d ) ; double D1 = determinantOfMatrix ( d1 ) ; double D2 = determinantOfMatrix ( d2 ) ; double D3 = determinantOfMatrix ( d3 ) ; Console . Write ( " D ▁ is ▁ : ▁ { 0 : F6 } ▁ STRNEWLINE " , D ) ; Console . Write ( " D1 ▁ is ▁ : ▁ { 0 : F6 } ▁ STRNEWLINE " , D1 ) ; Console . Write ( " D2 ▁ is ▁ : ▁ { 0 : F6 } ▁ STRNEWLINE " , D2 ) ; Console . Write ( " D3 ▁ is ▁ : ▁ { 0 : F6 } ▁ STRNEWLINE " , D3 ) ; if ( D != 0 ) { double x = D1 / D ; double y = D2 / D ; Console . Write ( " Value ▁ of ▁ x ▁ is ▁ : ▁ { 0 : F6 } STRNEWLINE " , x ) ; Console . Write ( " Value ▁ of ▁ y ▁ is ▁ : ▁ { 0 : F6 } STRNEWLINE " , y ) ; Console . Write ( " Value ▁ of ▁ z ▁ is ▁ : ▁ { 0 : F6 } STRNEWLINE " , z ) ; } else { if ( D1 == 0 && D2 == 0 && D3 == 0 ) Console . Write ( " Infinite ▁ solutions STRNEWLINE " ) ; else if ( D1 != 0 D2 != 0 D3 != 0 ) Console . Write ( " No ▁ solutions STRNEWLINE " ) ; } } public static void Main ( ) { double [ , ] coeff = { { 2 , - 1 , 3 , 9 } , { 1 , 1 , 1 , 6 } , { 1 , - 1 , 1 , 2 } } ; findSolution ( coeff ) ; } }