[ Foro de Pascal ]
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?????
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.
---
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.
Gracias, problema solucionado!!!
¿Cuál fue la solución que encontrastes?.
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.)