Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Temas - Idmus

#1
#include <stdio.h>
#include <stdlib.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++;
    return (num_lineas+1);
}
   
       

void LlenarMatriz(float a[50][50], int *n)
{
     
     int i, j;
     char b[20];
     
     printf("Nombre del archivo: ");
     gets(b);
     ar = fopen(b, "r");
     *n= TotalLineas(b);
     
     for(i=0; i<*n; i++)
     {
              for(j=0; j<*n+1; j++)
              {
                       fscanf(ar, "%d", &a[i][j]);
                     //  printf("%i", a[i][j]);
              }
     }
}

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("%i\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;
    float a[50][50];
    /*
    printf("Ingrese la cantidad de filas y columnas: ");
    scanf("%i", &n);
    */
   
    LlenarMatriz(a,&n);
    ImpMatriz(a,n);
    GaussJordan(a,n);
   
    system("pause");
    return 0;
   
}




El codigo me tira una matriz de 0 por cada elemento en el archivo de texto desde el que leo la matriz.
¿alguna idea de que podria ser?



ejemplo de matriz en archivo.txt (el archivo se llamara "matriz.txt" :


+6 -2 +2 +4 +12
0 -4  +2 +2 +10
0  0  +2  -5    -9
0  0    0  -3    -3
#2
Hola, tengo una duda, el el caso de que quisiera leer una matriz dentro de un archivo ".txt" desde una funcion... ¿como seria posible? , es decir tengo mi funcion


"int main()"

y dentro de esta funcion llamo a una funcion que se llama "leer matriz()"

pero nose como enviar ese archivo "matriz.txt" con la matriz a la funcion para que me lo lea desde adentro de la funcion "leermatriz()"


agradeceria una ayuda de antemano muchas gracias


PD: lo que estaria adentro del archivo "matriz.txt"
seria algo asi:



1 3 4  7
2 4 8  8
5 8 10 9