#c #loops #matrix #multidimensional-array #linear-algebra
#c #циклы #матрица #многомерный массив #линейная алгебра
Вопрос:
#include<stdio.h>
int main()
{
int i,j,k,n;
float A[20][20],c,x[10];
scanf("%d",amp;n);//size of matrix
for(i=1; i<=n; i )
{
for(j=1; j<=(n 1); j )
{
printf(" A[%d][%d]:", i,j);
scanf("%f",amp;A[i][j]);
}
}
//looking for elements in the diagonal matrix
for(j=1; j<=n; j )
{
for(i=1; i<=n; i )
{
if(i!=j)
{
c=A[i][j]/A[j][j];
for(k=1; k<=n 1; k )
{
A[i][k]=A[i][k]-c*A[j][k];
}
}
}
}
for(i=1; i<=n; i )
{
x[i]=A[i][n 1]/A[i][i];
printf("n x%d=%fn",i,x[i]);//solution
}
return(0);
}
он печатает такие вещи, как «#IO». Предполагается, что алгоритм должен иметь три уравнения с n переменными в качестве входных данных. Я думаю, что проблема в том, что я делю на ноль, но я не знаю, что я могу добавить, чтобы избежать этого.
Комментарии:
1. выглядит нормально: ideone.com/E9S8wK
2. Выполните тест для A[j] [j] и A[i] [i], чтобы избежать деления на 0.
3. Вы должны опубликовать все сообщение, которое оно печатает.