Código (c) [Seleccionar]
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
FILE *ar;
int TotalLineas(char b[20])
{
ar = fopen(b, "r");
int ch,num_lineas=0;
while((ch=fgetc(ar)) != EOF)
if (ch == '\n')
num_lineas++;
// printf("LOLO %i \n",num_lineas);
fclose(ar);
return (num_lineas+1);
}
void LlenarMatriz(float a[50][50], int n,char b[20])
{
int i, j, k;
ar = fopen(b,"r");
k=n;
for(i=0; i<k; i++)
{
for(j=0; j<k+1; j++)
{
fscanf(ar, "%f", &a[i][j]);
}
}
fclose(ar);
}
void ImpMatriz(float a[50][50], int n)
{
int i, j;
for(i=0; i<n; i++)
{
for(j=0; j<n+1; j++)
{
printf("%f \t", a[i][j]);
}
printf("\n");
}
}
void GaussJordan(float a[50][50],int n)
{
float piv, x, y;
int i, j, k;
for(i=0; i<n; i++)
{
for(j=0;j<n;j++)
{
if(j != i)
{
x=a[i][j];
y=a[j][i];
for(k=0;k<n+1;k++)
a[j][k]=a[j][k]/y*x+a[i][k];
}
}
}
}
int main()
{
int n;
char b[20];
float a[50][50];
printf("Nombre del archivo: ");
gets(b);
n= TotalLineas(b);
LlenarMatriz(a,n,b);
ImpMatriz(a,n);
GaussJordan(a,n);
system("pause");
return 0;
}
ya se puede leer la matriz para gauss , al parecer solo era un problema de punteros, ahora deberia poder aplicar aplicar gauss. ¿que deberia hacer para calcular gauss?