Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*sp.h*/
- void delay(int);
- int segundaP(void)
- {
- int i, j, intentos=0, concorr=1, ccont=0;
- char tc, cad[35], pas[]="ldp";
- clrscr();
- bkfill(1);
- textbackground(15);
- textcolor(0);
- /* Se dibuja la caja de la contraseña */
- for(i=10; i<=70; i++)
- {
- for(j=7; j<=9; j++)
- {
- gotoxy(i, j);
- cprintf(" ");
- }
- }
- textcolor(0);
- gotoxy(11, 8);
- cprintf("Ingrese la Contrase%ca: ", 164);
- do{
- do{
- tc = getch();
- if( (int) tc != 13 )
- {
- /* Si el caracter recibido es diferente de ENTER
- se inserta en una cadena de caracteres, y
- se aumenta el contador solo si no se supera la
- caja de contraseña ni el caracter ingresado es el de "BORRAR" */
- cad[ccont]=tc;
- if(ccont<34 && (int) tc != 8 )
- ccont++;
- }else{
- /* Si lo capturado fue enter, se cierra la cadena */
- cad[ccont] = '\0';
- }
- if( (int) tc != 8)
- {
- /* Si lo capturado es diferente de "BORRAR" y no se ha superado
- la caja de contraseña, se escribe un asterisco*/
- if(ccont<34 && (int)tc != 13 )
- printf("*");
- }else{
- /* Si lo capturado ha sido "BORRAR" y si se ha escrito algo
- disminuimos la contadora, y sustituimos el caracter ingresado
- anteriormente por un espacio, destruyendolo asi.
- despues se borra en pantalla /b representa un retroceso,
- se imprime un espacio y vuelve a retroceder*/
- if(ccont >0)
- {
- ccont--;
- cad[ccont]=' ';
- cprintf("\b");
- cprintf(" ");
- cprintf("\b");
- }
- }
- }while( (int) tc != 13 );
- /* strcmp compara dos cadenas y devuelve 0 si son iguales. */
- if(strcmp(cad, pas) == 0 )
- {
- concorr=0;
- }else{
- /*Si las cadenas son diferentes, borro todo, tanto en la cadena, como en pantalla */
- gotoxy(34, 8);
- for(i=0; i<=ccont; i++)
- {
- cprintf(" ");
- cad[i] = ' ';
- }
- gotoxy(20, 4);
- cprintf("Incorrecto! %d Intentos Restantes", (2-intentos));
- gotoxy(34, 8);
- intentos++;
- ccont=0;
- }
- }while(intentos<3 && concorr!=0);
- gotoxy(20, 4);
- textbackground(1);
- textcolor(0);
- /*Se valora si se ha finalizado porque se ingreso la contraseña
- correcta, o porque se acabaron los intentos */
- if(concorr==0)
- {
- cprintf(" Contrase%ca Correcta!. Iniciando Carga.", 164);
- }
- else
- {
- cprintf(" Contrase%ca Incorrecta. Finalizando", 164);
- }
- delay(1700);
- return concorr;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement