Estás en: Inicio >> Foros >> Informática >> Programación
Programación /

[PASCAL] Ocultar ingreso de datos en pantalla

Participa en el tema [PASCAL] Ocultar ingreso de datos en pantalla en el foro Programación.
tengo que ingresar un string de 20 caracteres al programa pero cuando se lo ingresa ...

Buscar en este tema:
 
  •  
    #1 [PASCAL] Ocultar ingreso de datos en pantalla
    tengo que ingresar un string de 20 caracteres al programa pero cuando se lo ingresa necesito que no se veo lo ingresado en la pantalla como si fuera un contraseña.

    Alguno sabe como hacerlo?
    +
     
    0
    Me gusta
     
    http://www.psicofxp.com/forums/programacion.313/819505-pascal-ocultar-ingreso-de-datos-pantalla.html
    | Más
  • #2 Re: Ocultar ingreso de datos en pantalla

    ¿Qué pascal?
    Me gusta este mensaje
  • #3 Re: Ocultar ingreso de datos en pantalla

    Ese es un lindo ejercicio para iniciarse en la práctica de programación. Cuando alguien pide una entrada de datos, pensamos inmediatamente en la función Readln; pero en este caso, no sirve, pues la entrada de datos debe estar oculta, como es el caso de los campos de contraseña donde cada vez que uno pulsa una tecla alfanumérica, se escribe un asterisco o algún otro símbolo.
    En realidad, lo que hay que hacer es ir tomando caracter por caracter lo que el usuario va escribiendo con una función que ahora no recuerdo el nombre, pero que levanta solo un caracter. La primera vez que se lee un caracter, se lo guarda y se escribe un asterisco en pantalla, luego se lee otro caracter y se le añade al anterior así se va formando la palabra y se vuelve a imprimir otro asterisco en pantalla.
    Se puede añadir dificultad si el ejercicio pide que se pueda borrar con la tecla backspace.
    Me gusta este mensaje
  • #4 Re: Ocultar ingreso de datos en pantalla

    la funcion es "readkey" y usa crt. El readkey lee un caracter por pantalla.

    Aca te subi un par de lineas de codigo pero voy a aclararte que falta validar el tamaño de la cadena y un par de cosas mas (es decir falta ponerlo fino a programa)

    Código:
    Program login;
    Uses
          crt;
    Var
       caracter:char;
       pass:string[20];
    begin
      ClrScr;
      pass:='';
      write ('Ingrese el pass menor de 10 letras: ');
      repeat
        begin
          caracter:=readkey;
          pass:=pass + caracter;
          write('*');
        end;
      until caracter=#13; {sale al apretar enter}
    writeln;
    writeln ('mostrar pass: ',pass);
    readln;
    end.
    
    Editado por nacholibre - 23.08.2008 12:46 hs.
    Me gusta este mensaje
Estás en: Inicio >> Foros >> Informática >> Programación


Estadísticas del tema
  • 3 RESPUESTAS
  • 1002 VISTAS
  • 4 USUARIOS RESPONDIERON
 
Ir arriba
Contacto | Acerca de | Ayuda | Términos Legales | privacidad | Pautas de convivencia | Mapa de los foros | TrabajÁ con nosotros
©2008 Psicofxp.com S.A. - Todos los derechos reservados
Certifica IAB