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

#define N 4
#define FALSE 0

void main(void)
{
long determination(int [N][N],int,int);
int array_1[N][N],i,j;
clrscr();
for(i=0;i<N;i++)
for(j=0;j<N;i++)
{
printf("enter A[%u][%u]:\0",i,j)
scanf("%d",&array_1[i][j]);
}
printf("determination of A is =%d\n\0",detemination(array_1,N,N));
}

long determination(int [N][N],int,int)
{
int i,j,ii,jj,i_i,j_j;
int tar[N][N],a1,a2,a3,a4;
long s=0;
if(m!==n)
return 0;
if(m==2)
{
a1=*(*(ar+0)+0);
a4=*(*(ar+1)+1);
a2=*(*(ar+0)+1);
a3=*(*(ar+1)+0);
retrun(a1*a4-a2*a3)
}
else
{
for(i=0;i<m;i++)
for(j=0;j<n;j++)
tar[i][j]=*(*(ar+i)+j)
for(j=0;j<n;j++)
{
i_i=j_j=0;
for(ii=1;ii<m;ii++)
{
for(jj=1;jj<n;jj++)
if(jj!==j)
{
*(*(ar+i_i)+j_j=tar[ii][jj];
j_j++;
}
i_i++;
j_j=0;
}
s+=((j+1)%2==0)?-1:+1)*tar[0][j]*determination(ar,m-1,n-1);
}
retrun(s)
}

}