Foro de elhacker.net

Programación => Programación General => Mensaje iniciado por: manu3742 en 20 Abril 2011, 12:46 pm



Título: Ayuda procedimiento Pascal
Publicado por: manu3742 en 20 Abril 2011, 12:46 pm
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
  1. PROCEDURE lee_biblioteca(var biblioteca: Tbiblioteca; longitud: integer);
  2.  
  3. var
  4.  
  5. i: integer;
  6.  
  7. begin
  8.  
  9. for i:= 1 to longitud do
  10.  
  11. begin
  12.  
  13. writeln('Introduzca los datos del libro: ' , i);
  14. lee_libro(biblioteca[i]);
  15.  
  16. end;
  17.  
  18. end;


Título: Re: Ayuda procedimiento Pascal
Publicado por: skapunky en 20 Abril 2011, 14:19 pm
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.


Título: Re: Ayuda procedimiento Pascal
Publicado por: 79137913 en 20 Abril 2011, 14:45 pm
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:
Código:
i:=Longitud
Y yo pondria un:
Código:
ReadLn(datos)
Para que el usuario pudiese introducir los datos para el libro i.

GRACIAS POR LEER!!!


Título: Re: Ayuda procedimiento Pascal
Publicado por: manu3742 en 20 Abril 2011, 17:48 pm
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.