본문내용
렬구하기
{
int i,j;
MTYPE dtm=determinant(oriMat,size);
MTYPE *trMat=(MTYPE*) malloc (sizeof(MTYPE)*size*size);
MTYPE *cfMat=(MTYPE*)malloc(sizeof(MTYPE)*size*size);
CofactorMat(trMat,oriMat,size);
TransposeMat(cfMat,trMat,size);
for(i=0; i
{
for(j=0; j
inMat[i*size+j]=cfMat[i*size+j]/dtm;
}
}
MTYPE* GetNewMatrix(int size) // 표준입력으로행렬얻기
{
int i;
MTYPE* mat = (MTYPE *)malloc(sizeof(MTYPE) * size * size);
for(i = 0; i < size * size; i++)
scanf("%lf", &mat[i]);
fflush(stdin);
return mat;
}
void MultiMat(MTYPE *multiMat, MTYPE *mat1, int i1, int j1, MTYPE *mat2, int i2, int j2) // 행렬곱
{
int i,j,k;
for(i=0; i
for(j=0; j
multiMat[i*i1+j]=0;
for(i=0; i
{
for(j=0; j
{
for(k=0; k
{
multiMat[i*i1+j]+=mat1[i*i1+k]*mat2[k*i1+j];
}
}
}
}
{
int i,j;
MTYPE dtm=determinant(oriMat,size);
MTYPE *trMat=(MTYPE*) malloc (sizeof(MTYPE)*size*size);
MTYPE *cfMat=(MTYPE*)malloc(sizeof(MTYPE)*size*size);
CofactorMat(trMat,oriMat,size);
TransposeMat(cfMat,trMat,size);
for(i=0; i
for(j=0; j
}
}
MTYPE* GetNewMatrix(int size) // 표준입력으로행렬얻기
{
int i;
MTYPE* mat = (MTYPE *)malloc(sizeof(MTYPE) * size * size);
for(i = 0; i < size * size; i++)
scanf("%lf", &mat[i]);
fflush(stdin);
return mat;
}
void MultiMat(MTYPE *multiMat, MTYPE *mat1, int i1, int j1, MTYPE *mat2, int i2, int j2) // 행렬곱
{
int i,j,k;
for(i=0; i
for(i=0; i
for(j=0; j
for(k=0; k
multiMat[i*i1+j]+=mat1[i*i1+k]*mat2[k*i1+j];
}
}
}
}
소개글