Crear un sistemas de login con limite de intentos en caso de usuario / contraseña erróneos (JAVA)
Tengo como tarea hacer un sistema de login que al introducir 3 veces mal la contraseña salte un mensaje que diga acceso denegado. Y lo normal usuario contraseña incorrecto o bienvenido si todo esta bien.
He estado haciendo el bucle while pero no consigo hacerlo. De momento tengo es el sistema de login pero sin el contador, me he cansado de intentar de todo. Jajaja
private void iniciarsesion(){ int intentos = 4, maximos = 3; String User = "CUNPOO"; String Clave ="50216"; String Pass = Password.getText(); if (txtUsuario.getText().isEmpty() || Password.getText().isEmpty()){ JOptionPane. ShowMessageDialog(null,"Por favor escriba su usuario y contraseña", "Iniciar sesión", JOptionPane.INFORMATION_MESSAGE);; }else{ if(intentos>maximos){ JOptionPane.showMessageDialog(this, "Usuario bloqueado intentos permitidos alcanzados"); }else{ if (txtUsuario.getText().equals(User)&& Pass.equals(Clave)){ JOptionPane.showMessageDialog(this, "Bienvenido"); } else{ JOptionPane.showMessageDialog(this, "Usuario / Contraseña incorrecta, lleva "+intentos+" de 3"); } } } }
Me estaba guiando por esto pero no se como adaptarlo ya que este corre pero en consola y lo necesito es grafico.
Scanner teclado= new Scanner(System.in); int login=0; int pass=0; int intentos=1; int maximo=3; while((login!=1809)||(pass!=1234)&& (intentos<maximo)){ System.out.print("introduzca un login: "); login=teclado.nextInt(); System.out.print("Introduzca su pass:"); pass=teclado.nextInt(); if(intentos==3){ System.out.println("acceso denegado.."); intentos=intentos-maximo; } intentos++; } System. Out.println("login y pass, correctos...");
Respuesta de Stanimir Iankov Stantchev
2