Pascal/Turbo Pascal - Error al compilar programa

 
Vista:
sin imagen de perfil
Val: 1
Ha aumentado su posición en 17 puestos en Pascal/Turbo Pascal (en relación al último mes)
Gráfica de Pascal/Turbo Pascal

Error al compilar programa

Publicado por Emiliano (1 intervención) el 07/04/2019 21:09:11
Buenas tardes, les quería consultar ya que estoy haciendo un trabajo para la facultad sobre el problema que estoy teniendo. Mi proceso
procedure cargarLibro(var Libros:libro);
begin
with libros do begin
if (nombre<>'zzz') then begin
writeln('Escribe el nombre del libro ');
readln(nombre);
writeln('Escribe isbn ');
read(isbn);
end;
end;
end;
El problema que presenta este proceso es que cuando se ejecuta
por segunda vez, el compilador saltea la linea de código
readln(nombre); y pasa directamente a la de abajo
dejando en pantalla Escribe isbn. Se que se soluciona con un readln; debajo de la línea read(nombre);
pero quisiera saber por qué sucede esto. Saludos.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Error al compilar programa

Publicado por David (224 intervenciones) el 08/04/2019 20:38:03
El error está en que al leer el isbn utilizas read, con lo cual no vacias el buffer del teclado. Para solucionarlo sólo tendrías que cambiar ese read por un readln.

Yo siempre aconsejo que el read se utilice sólo para leer ficheros con tipo y se utilice readln para leer variables y ficheros de texto.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar