Martes 5 de Noviembre de 2024, 15:42
SoloCodigo
Bienvenido(a),
Visitante
. Por favor,
ingresa
o
regístrate
.
¿Perdiste tu
email de activación?
Inicio
Foros
Chat
Ayuda
Buscar
Ingresar
Registrarse
SoloCodigo
»
Foros
»
Programación General
»
C/C++
(Moderador:
Eternal Idol
) »
Re: Leer matrices desde un archivo
« anterior
próximo »
Imprimir
Páginas: [
1
]
Autor
Tema: Re: Leer matrices desde un archivo (Leído 11126 veces)
Lucia
Nuevo Miembro
Mensajes: 17
Re: Leer matrices desde un archivo
«
en:
Miércoles 6 de Noviembre de 2002, 16:46 »
0
Bueno tengo que hacer una practica y casi todo bien, menos al punto que llego que me dice q leo una matriz desde un archivo, no tengo muy claro a q se refiere con eso, q hay una serie de valores en el archivo, que leo dsde mi progrma y los asigno a una matriz ? esto es un ejercicio de programacion basica, asi que supongo que no pueden ser muchas florituras, muchas gracias
Tweet
Quasar
Nuevo Miembro
Mensajes: 6
Re: Leer matrices desde un archivo
«
Respuesta #1 en:
Miércoles 6 de Noviembre de 2002, 20:30 »
0
Lo que te piden es que leas un conjunto de datos numericos de un archivo. supongo que el formato será de texto y que tendrás tantos valores como dimensión tenga la matriz, así que crea con cualquier editor un archivo de texto con un conjunto de datos numéricos, y una vez hecho esto leelo desde tu programa numero por número y los vas metiendo en la matriz. tu único problema puede ser no saber la dimensión de la matriz, el resto supongo que te será fácil.
ánimo, que es fácil. si quieres código o algo, pídemelo.
Lucia
Nuevo Miembro
Mensajes: 17
Re: Leer matrices desde un archivo
«
Respuesta #2 en:
Jueves 7 de Noviembre de 2002, 20:22 »
0
gracias! la verdad es que esa era mi principal sospecha, la cosa es q le pregunte a mi profesor, como nunca esta en su oficina pues le mande un email y por lo general contesta pero no eta vez, y bueno sobre el tamaño de la martriz pone q hasta 50x50 asi q supongo lo q me salga a mi de la gana, es q la verdad me he impacientado y quiero quitarme esta practica del medio lo antes posible asi que decidi preguntar a la gente q entendia, pq a lo mejor hay una manera de en un archivo tener algo q reconozca como matriz en si C o yo me estoy montando paranoias de mas.
Gracias por lo del codigo pero de momento soy muy apañadita pa esas cosas pero si me surge alguna pega preguntare y gracias de nuevo;)
Quasar
Nuevo Miembro
Mensajes: 6
Re: Leer matrices desde un archivo
«
Respuesta #3 en:
Viernes 8 de Noviembre de 2002, 09:54 »
0
Puede que lo que busques sea esto, el tener una matriz de NxM y enviarla de golpe al fichero y leerla de golpe del fichero. Puedes hacerlo escribiendo y leyendo un bloque de bytes.
con fwrite(matriz, sizeof(matriz),1,pfichero);
y para leerla fread(matriz,sizeof(matriz),1,pfichero);
pero esto lo hará en modo binario, así que como no sé el tipo de archivo que tienes...
Lucia
Nuevo Miembro
Mensajes: 17
Re: Leer matrices desde un archivo
«
Respuesta #4 en:
Viernes 8 de Noviembre de 2002, 17:46 »
0
a mi me ha dicho, lees la matriz desde un archivo auxiliar no mas no menos
adocrates
Miembro activo
Mensajes: 54
Re: Leer matrices desde un archivo
«
Respuesta #5 en:
Viernes 8 de Noviembre de 2002, 21:14 »
0
El archivo con numeros separados, las columnas por ; (puntoycoma) y las lineas por enter :
99;23;45;67;2;etc...
65;34;87;23;83;5;etc...
etc...
Luego tienes la matriz de numeros de 50x50, un bufer, un puntero, un FILE y los indices :
Código: Text
int matriz[50][50];
char buf[1024], *p;
FILE *fp;
int k=0,j=0;
Inicializamos y abrimos el archivo (fijate que usamos el [-1] como inicializador ):
Código: Text
printf("Lectura de un archivo con numeros para manejo de matriz en Lenguaje C.n");
for(k=0;k<50;k++)
for(j=0;j<50;j++)
matriz[k][j]=-1;
k=j=0;
if((fp=fopen("matriz.txt","r"))==NULL)
return(printf("ERRROR NO existe archivo con numeros 'matriz.txt' !n"));
Leemos un buffer y luego parseamos (detectar y cortar) con el separador ';' con p y la funcion strtok :
Código: Text
while(fgets(buf,1024,fp) != NULL)
{
p=strtok(buf,";");
while(p!=NULL)
{
matriz[k][j]=atoi(p);
j++;
p=strtok(NULL,";");
}
j=0;
k++;
}
Finalmente imprimimos el resultado, recorriendo la matriz y preguntando por el MAXIMO (50) o el inicializador [-1] :
Código: Text
for(k=0;k<50 && matriz[k][0] > -1;k++)
{
for(j=0;j<50 && matriz[k][j] > -1 ;j++)
{
printf("[%4d] ",matriz[k][j]);
}
putchar('n');
}
fclose(fp);
Y esta es la salida :
Código: Text
Lectura de un archivo con numeros para manejo de matriz en Lenguaje C.
[ 99] [ 23] [ 45] [ 67] [ 2]
[ 65] [ 34] [ 87] [ 23] [ 83] [ 5]
Suerte y Avisa como te fue.
Solo C que nada C.
Lucia
Nuevo Miembro
Mensajes: 17
Leer matrices desde un archivo
«
Respuesta #6 en:
Viernes 8 de Noviembre de 2002, 23:53 »
0
gracias, en fins, yo te cuento, la pena es q no te podre decir nada ata enero, y a ver si me acuedo de esa ^^U
Imprimir
Páginas: [
1
]
« anterior
próximo »
SoloCodigo
»
Foros
»
Programación General
»
C/C++
(Moderador:
Eternal Idol
) »
Re: Leer matrices desde un archivo