Pascal/Turbo Pascal - Seleccion de opciones sin errores.

 
Vista:

Seleccion de opciones sin errores.

Publicado por Matias (2 intervenciones) el 28/04/2011 23:00:05
Hola, Mi nombre es Matias y desarrollando un programita me encontré.
En una parte de mi programa te pide que elijas una opción. Para esto enumere las opciones y una un read para almacenar la elección en una variable de tipo integer, luego if variable=1 then tal cosa si es 2 tal cosa etc etc. Ahora, me gustaría que solo se pudiera ingresar un carácter, es decir cuando el read me pide un numero si el usuario quisiera podría escribir 1599987664 por decir algo, mientras que las opciones son solo 9.
Es solo por un tema de prolijidad pero existe algún modo de restringir al usuario para que solo pueda ingresar un dígito???
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

Seleccion de opciones sin errores.

Publicado por ramon (2158 intervenciones) el 28/04/2011 23:32:29
[Si mejor para entenderlo te pongo una muestra de una función que aria eso]

uses
crt;
function tecla : char; {esta funcion te debolvera un caractre
numerico del 1 al 9 solo una vez}
var
tec : char;
int : integer;
begin
repeat
tec := readkey;
if tec in [#49..#57] then
tecla := tec
else
begin {Esto es solo para que veas el proceso luego lo puedes
quitar desde el else al end y pones punto y coma en tec}
gotoxy(2,2);write('Pulse tecla numerica');
delay(400);
gotoxy(2,2);write(' ');
end;
until tec in [#49..#57];
end;

begin
clrscr;
write(tecla);
readln;
end.

{Si necesitas mas ayuda dímelo lo are con gusto}
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

Seleccion de opciones sin errores.

Publicado por Matias (2 intervenciones) el 29/04/2011 01:16:31
Upa upa.. todavía no vimos funciones pero voy a estudiar bien el código haber que saco en limpio mil gracias por contestar =D.
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