Ayuda procedimiento Pascal

Iniciado por manu3742, 20 Abril 2011, 12:46 PM

0 Miembros y 1 Visitante están viendo este tema.

manu3742

Vereis tengo una constante cuyo número de libro en la biblioteca es de 50.

Al utilizar este procedimineto que os pongo me salen para introducir datos de libros los 50.

qué código tengo que agregar para que únicamente me salga un libro a introducir y no los 50?

saludos y gracias por anticipado.


Código (pascal) [Seleccionar]
PROCEDURE lee_biblioteca(var biblioteca: Tbiblioteca; longitud: integer);

var

i: integer;

begin

for i:= 1 to longitud do

begin

writeln('Introduzca los datos del libro: ' , i);
lee_libro(biblioteca[i]);

end;

end;

skapunky

Se te ven los 50 libros porque haces:

for i:= 1 to longitud do

Donde imagino que "longitud" es 50... si quitas ese bucle ya no se te listarán los 50,es decir con ese bucle haces 50 veces el writeln de 1 a 50.
Killtrojan Syslog v1.44: ENTRAR

79137913

HOLA!!!

Como dice skapunky , asi te salen los 50 ( suponiendo que long sea 50).

Ahora si long es el libro a ver tendrias que hacer:
i:=Longitud
Y yo pondria un: ReadLn(datos) Para que el usuario pudiese introducir los datos para el libro i.

GRACIAS POR LEER!!!
"Como no se puede igualar a Dios, ya he decidido que hacer, ¡SUPERARLO!"
"La peor de las ignorancias es no saber corregirlas"

79137913                          *Shadow Scouts Team*

manu3742

Gracias por contestar , pero no compila.

Dado esto, creo que tengo que hacer una busqueda en la tabla para que me diga que posición de las 50 entradas esta libre e introducir los datos del libro.

El problema es como hago una busqueda de una posicion libre en la tabla.