¿Cómo implementar el método de eliminación del pivote de columna gaussiano mediante programación?
Utilice lenguaje C para compilar el siguiente programa:
#include
#include
void main()
{
int i,j,k,ik,n;
float max,t,a[10][10] ,x [10],sum;
printf("Ingrese el orden del sistema de ecuaciones:");
scanf("%d",&n); p>
printf("Ingrese la matriz aumentada\n");
for (i=1;i<=n;i++)
for (j=1 ;j<= n+1;j++)
scanf("%f",&a[i][j]);
for (k=1;k<=n -1;k++ )
{
max=0.0;
para (i=k;i<=n;i++)
if (max { max=fabs(a[i][k]); ik=i ; } if (max==0) { printf("A es singular") ; romper; } if (ik!=k) for (j=k;j<=n+ 1;j++) { t=a[k][j]; a[k][j]=a[ik][j ]; a[ik][j]=t; } for(i=k+1;i<=n;i++ ) { a[i][k]=a[i][k]/a[k][k]; para (j =k+1;j <=n+1;j++) a[i][j]=a[i][j]-a[i][k]*a[k][ j]; } } if (a[n][n]==0) printf("A es singular"); else x[n]=a[n][n+1]/a[n][n]; para (k=n- 1;k>=1;k--) { suma=0.0; para (j=k+1 ;j<=n; j++) suma=sum+a[k][j]*x[j]; x[k]=(a[k][ n+1]-suma )/a[k][k]; } para (i=1;i<=n;i++) printf("x[ %d]=%f\n",i,x[i]); }