[ Foro de Pascal ]
Tengo que utilizar una FUNCTION para hacer una busqueda dicotomica para buscar una posicion de una chapa patente en un achivo y luego utilizar esa FUNCTION en un PROCEDURE que actualice la fecha de retorno de un vehiculo. Mi pregunta masomenos es así: Una vez encontrada la posicion en el archivo, como hago para llamar a esa función desde el procedimiento?
El archivo se llama AUTO.dat
Lo que obtuve con la función es:
BUSCA:=filepos (auto)
y lo que no se como hacer es el procedimiento
esto es lo que tengo:
reset (auto)
z:= BUSCA (auto)
seek (auto, z)
registro.fecharetorno:= fechaactual
write (auto, registro)
........
Estábamos hablando de algo muy similar en este hilo:
http://www.aprendeaprogramar.com/mod/forum/discuss.php?d=982
Si tienes la ficha en memoria (porque acabas de comprobar su código), también puedes saber su fecha de retorno y cualquier otro dato que sea parte de la ficha.
De hecho, también deberías saber a qué posición dentro del fichero te acabas de desplazar con "seek".
Por tanto, sólo faltaría volver a desplazarte a esa posición (porque tras cada lectura de fichero, la posición "avanza") y guardar una copia de tu ficha, que tenga el mismo valor en todos los campos excepto en el que quieras modificar (en tu caso, la fecha de retorno). Esos dos pasos son los que debería dar tu "procedure".
(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)