Realiza una busqueda en un archivo aleatoreo

program buscar;
uses 
	crt;
type
	Direc = record
		 Nombre   : string[30];
		 Calle    : string[25];
		 Ciudad   : string[15];
		 Telefono : string[15]
		end;
	Archivo = file of Direc;
var
	Dir	  : Archivo;
	Elemento  : Direc;
	Respuesta : char;
	Resultado : integer;
	Posicion  : integer;
	NomBuscar : String[30];
	Hallado   : boolean;
 
BEGIN
        clrscr;
	Assign(Dir,'c:/Agenda.dat');
        {$I-}
           Reset(Dir);  {Abre el flujo de datos para posteriormente ser guardado}
           Resultado:=IOresult;
	{$I-}	
 
	if Resultado <> 0 then
	   Rewrite(Dir);
	Hallado:=false;
	Write('Escribe el nombre a buscar: ');
	Readln(NomBuscar);
 
	while not Eof(Dir) and not Hallado do
	     begin
	     Read(Dir,Elemento);
	     Hallado:=Registro.Nombre = NomBuscar;	
 
 	end;
	if Hallado then
	   begin 
		posicion:=FilePos(Dir) - 1;
	   	write ('Se encuentra en ' + posicion)
	   end		
	else
		write('No se encontro el registro');
 
 
	Close(Dir)
END.		      	 

¿Has encontrado algún error? ¿Tienes la solución? Dejame tu correción ;-)

Antes de comentar: Gran parte de los ejercicios propuestos no tienen librerías debido a que Wordpress las eliminó al verlas como etiquetas HTML. Si sabes/tienes/conoces las librerías que hacen falta, déjalo en los comentarios. Y lo mas importante: Todos los ejemplos fueron realizados por personas con únicamente conocimiento básico del lenguaje, no de programación.

Otro punto importante: Si vas a sugerir un segmento de código en algún lenguaje debes hacerlo así:

  • Si es lenguaje C [c]Código en C[/c]
  • Si es lenguaje Pascal [pascal]Aquí dentro el código de Pascal[/pascal].

De esta manera el código coloreas el código.

Otro punto importante para muchos que sienten que se les ignora: Todos los comentarios los reviso y en su debido momento los apruebo, pero ojo con el con lo siguiente:

Me reservo el derecho de alterar, publicar o no los comentarios as´ como cambiar mis condiciones en el momento que así lo requiera.

¿estas de acuerdo? entonces adelante que ya te he quitado bastante tiempo leyendo esta basura de advertencias :)