Here is my code:
import java.util.Scanner.*;
import java.util.*;
public class determinantcode
{
double A[][];
double m[][];
int N;
public input()
{
Scanner s=new Scanner(System.in);
System.out.println("enter dimension of matrix");
N=s.nextInt();
a = new double[N][];
for(int i=0;i<N;i++)
{
A[i]=new double[n];
}
System.out.println("enter the elements of matrix");
for(int i=0;i<N;i++)
{
System.out.println("enter the elements of matrix of equation" + (i+1));
for(int j=0;j<N;j++)
{
int k=s.nextDouble();
A[i][j]=k;
}
}
}
public double determinant(double A[][],int N)
{
double det=0;
double res;
if(N == 1)
res = A[0][0];
else if (N == 2)
{
res = A[0][0]*A[1][1] - A[1][0]*A[0][1];
}
else
{
res=0;
for(int j1=0;j1<N;j1++)
{
m = new double[N-1][];
for(int k=0;k<(N-1);k++)
m[k] = new double[N-1];
for(int i=1;i<N;i++)
{
int j2=0;
for(int j=0;j<N;j++)
{
if(j == j1)
continue;
m[i-1][j2] = A[i][j];
j2++;
}
}
res += Math.pow(-1.0,1.0+j1+1.0)* A[0][j1] * determinant(m,N-1);
}
}
return res;
}
public static void main(String args[]){
double res;
determinantcode d = new determinantcode();
d.input();
res = d.determinant(d.A,d.N);
System.out.println("the determinant valaue is " + res);
}
}
Thanks
import java.util.Scanner.*;
import java.util.*;
public class determinantcode
{
double A[][];
double m[][];
int N;
public void input(){
Scanner s=new Scanner(System.in);
System.out.println("enter dimension of matrix");
N=s.nextInt();
A = new double[N][];
for(int i=0;i<N;i++)
{
A[i]=new double[N];
}
System.out.println("enter the elements of matrix");
for(int i=0;i<N;i++)
{
System.out.println("enter the elements of matrix of equation" + (i+1));
for(int j=0;j<N;j++)
{
int k=s.nextInt();
A[i][j]=k;
}
}
}
public double determinant(double A[][],int N){
double det=0;
double res;
if(N == 1)
res = A[0][0];
else if (N == 2){
res = A[0][0]*A[1][1] - A[1][0]*A[0][1];
}
else{
res=0;
for(int j1=0;j1<N;j1++){
m = new double[N-1][];
for(int k=0;k<(N-1);k++)
m[k] = new double[N-1];
for(int i=1;i<N;i++){
int j2=0;
for(int j=0;j<N;j++){
if(j == j1)
continue;
m[i-1][j2] = A[i][j];
j2++;
}
}
res += Math.pow(-1.0,1.0+j1+1.0)* A[0][j1] * determinant(m,N-1);
}
}
return res;
}
public static void main(String args[]){
double res;
determinantcode d = new determinantcode();
d.input();
res = d.determinant(d.A,d.N);
System.out.println("the determinant valaue is " + res);
}
}