Donar $20 Donar $50 Donar $100 Donar mensualmente
 


Enviar respuesta 
 
Calificación:
  • 0 votos - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
Buscar en el tema
Dudas con posicion en un archivo
Autor Mensaje
leaan Sin conexión
Campeon del cubo Rubik
Sin estado :(
****

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 113
Agradecimientos dados: 97
Agradecimientos: 17 en 14 posts
Registro en: Apr 2011
Mensaje: #1
Dudas con posicion en un archivo Ejercicios y 1 más Algoritmos y Estructuras de Datos
Buenas estoy resolviendo unos finales y tengo varias dudas:

1- Yo tengo un archivo ordenado por cod cliente, lo puedo cargar en una lista, hace falta que cargue el cod cliente en la lista ? O como esta ordenado ya con la posicion tengo el cod cliente ? O hace falta cargar un campo posicion de (2 bytes por ejemplo) y serviria para ahorrar memoria ?

2- Como muestro que estoy buscando la posicion cuando recorro el archivo ?

NOT EOF C

leer(C,RC)

raux.cod <- rc.codigo
raux.pos <- pos( )¿?

INSERTANODO
(RAUX, LISTA)

(seria un ejemplo de como hacerlo)


3- Tengo en una lista el cod cliente y en el listado tengo que mostrar la descripcion de cada cliente. El archivo de clientes esta sin orden. Para imprimir el listado seria algo asi ?

while ( Lista <> NIL

while(   NOT EOF C

  POSCLI <- Busquedabinaria(codcli,rc.codcli,p,bol) )

seek(c,poscli)
write(rc.descrripcion)

)





Gracias !
(Este mensaje fue modificado por última vez en: 03-01-2013 18:19 por Aye.)
16-12-2012 10:51
Envíale un email Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
CarooLina En línea
Colaborador
2016! ❥
********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 3.466
Agradecimientos dados: 919
Agradecimientos: 1.219 en 454 posts
Registro en: Sep 2010
Mensaje: #2
RE: Dudas con posicion en un archivo
Te explico maso menos.

Lo que vos podes hacer es a medida que vas leyendo guardar las posiciones, osea lees el primero y ese es 0, lees el segundo y es uno. Pero ojo! Salvo que sepas la cantidad exacta de registro de un archivo , la posición ocupa 4 bytes!.
Puede ser que necesites guardar el código de cliente, por que necesitas una forma de identificarlo en tu lista. Si no como distinguís los clientes?
No es que ahorras, es que necesitas mucha info y no te alcanza la capacidad y/o las restricciones del final.

PAra buscar ese registro con la posición, usas la función seek. Y la posición que vas guardando es nada mas y nada menos que un contador.

love
16-12-2012 11:15
Envíale un email Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
[-] CarooLina recibio 1 Gracias por este post
leaan (16-12-2012)
leaan Sin conexión
Campeon del cubo Rubik
Sin estado :(
****

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 113
Agradecimientos dados: 97
Agradecimientos: 17 en 14 posts
Registro en: Apr 2011
Mensaje: #3
RE: Dudas con posicion en un archivo
Ahi me quedo mas claro, salvo la parte que la posicion es un contador.

Se inicializa en 0 y se va incrementando ?
16-12-2012 11:23
Envíale un email Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
nanuiit Ausente
♫ I'm Blue ...
... Da ba dee, da ba da ♫
**********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 8.880
Agradecimientos dados: 216
Agradecimientos: 572 en 201 posts
Registro en: Aug 2010
Mensaje: #4
RE: Dudas con posicion en un archivo
La posición dependerá de cómo sea tu archivo: si está ordenado y usas la búsqueda binaria, la posición NO es un contador. Es simplemente un apuntador a registro. Arranca en cero porque se presume la primera posición natural del archivo, y por una cuestión de inicializar
Si el archivo está ordenado por clave, y esa clave son valores correlativos (tipo “de 1 a 100“, “de 1000 a 3000“ podés valerte de la posición única predecible (a.k.a PUP) y vas haciendo los seek usando como POS esa posición (como harias con un array ponele)
Si el archivo no está ordenado, vas a tener que delegar la responsabilidad del orden en otra estructura, leyendo secuencialmente al archivo y seguramente tengas que insertar la posición (NO la clave, porque no podés hacer búdqueda binaria en el archivo al estar desordenado). Insertando la POS del registro, luego accedés directamente a los registros.

Si no se entendió, avisá.

ALGORITMOS

Apuntes: Mem. Dinámica - Mem. Estática - Proc. y Funciones || Guías: Módulos + 83 Ejercicios || Finales: 2004-2013


[Imagen: digitalizartransparent.png]

[Imagen: firmananiv2.png]
(Este mensaje fue modificado por última vez en: 16-12-2012 11:56 por nanuiit.)
16-12-2012 11:48
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
[-] nanuiit recibio 1 Gracias por este post
leaan (16-12-2012)
Buscar en el tema
Enviar respuesta 




Usuario(s) navegando en este tema: 1 invitado(s)



    This forum uses Lukasz Tkacz MyBB addons.