[ Foro de Pascal ]

instrucción de espera

25-Dec-2011 07:13
pop war
5 Respuestas

cómo hago para no tener que definir una variable del readln que ne sirve para visualizar el programa porque ni turbo pascal 7 ni 5.5 me toma el readkey() ni el readln() sin la variable dentro del paréntesis?????


25-Dec-2011 10:54
Nacho Cabanes (+32)

ReadLn lee un valor y lo guarda en una variable, así que en las versiones de Pascal que sean estrictas necesitará definir una variable. Siempre puedes "esquivarlo" creándote un procedimiento auxiliar:

procedure EsperaIntro;
var
 respuesta: string;
begin
 ReadLn(respuesta);
end;

En cuanto a "ReadKey", como es una extensión de Turbo Pascal, en general no será tan estricto, salvo por dos detalles:

- Necesitarás un "uses crt;"

- Tendrás que usar la "sintaxis extendida", algo que debería ocurrir normalmente en Turbo Pascal 7,pero posiblemente no en TP 5.5.

Te copio un fragmento de lo que era la ampliación 6 del curso, y que ahora no es parte de la versión "pública" (y tomo nota mental para volver a incluirlo):

---

$X:  Sintaxis extendida.

Con la sintaxis extendida ($X+, valor por defecto), se puede llamar a funciones como si fuesen procedimientos, despreciando los valores que devuelven.

---


25-Dec-2011 19:13
Luis Torres (+12)

Yo utilizo Turbo Pascal 7 y, puedo usar sin problemas la sentencia Readln, sin paréntesis, para detener el programa hasta que se presione una tecla.
Ejemplo:

program PruebaDetenerPrograma;

Begin
 Writeln('Programa que me permite probar la sentencia Readln sin parentesis.');
 Readln;
End.

Nota: si utilizo el paréntesis, me genera un error (20) de compilación.


26-Dec-2011 08:15
pop war

Gracias, problema solucionado!!!


26-Dec-2011 19:22
Luis Torres (+12)

¿Cuál fue la solución que encontrastes?.


29-Dec-2011 03:14
pop war

volví a instalar el turbo pascal, ahora me toma el readkey y el readln.






(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.)