Write a Java program which does Prompt user to input a passw

Write a Java program which does:

Prompt user to input a password that follows the password requirements below;

Verify the password to see if it satisfy the requirements. If not, display it with error message and prompt the user again until it fully complies the requirements;

Print out the password.


* Note: Algorithm of the program is required (using comments at the beginning of the program)  

Password Requirements:

1. At least 8 characters long

2. Contains at least one upper-case letter (from \'A\' to \'Z\')

3. Contains at least one lower-case letter (from \'a\' to \'z\')

4. Contains at least one of these special characters (!, \", #, $, %, and &)

5. Contains at least one numerical digit (from \'0\' to \'9\')

Solution

PasswordCheck.java


import java.util.Scanner;


public class PasswordCheck {

  
   public static void main(String[] args) {
       Scanner scan = new Scanner(System.in);
       while(true){
       System.out.print(\"Please enter the password: \");
       String password = scan.next();
       boolean status = validatePassword(password);
       if(status == true){
           System.out.println(\"Valid Password\");
           break;
       }
       else{
       System.out.println(\"Invalid Password.. Try Again..\");  
       }
       }
   }
   public static boolean validatePassword(String pass){
       int upperCount = 0;
       int lowerCount = 0;
       int digitCount = 0;
       int specialCharCount = 0;
       String specialChar = \"!\\\"#$%&\";
       if(pass.length() >= 8){
           for(int i=0; i<pass.length(); i++){
               if(Character.isUpperCase(pass.charAt(i))){
                   upperCount++;
               }
               else if(Character.isLowerCase(pass.charAt(i))){
                   lowerCount++;
               }
               else if(Character.isDigit(pass.charAt(i))){
                   digitCount++;
               }
               else if(specialChar.contains(\"\"+pass.charAt(i))){
                   specialCharCount++;
               }
           }
           if(upperCount > 0 && lowerCount >0 && digitCount >0 && specialCharCount>0){
               return true;
           }
           else{
               return false;
           }
              
       }
       else{
           return false;
       }
      
   }

}

Output:

Please enter the password: suresh
Invalid Password.. Try Again..
Please enter the password: password
Invalid Password.. Try Again..
Please enter the password: Password
Invalid Password.. Try Again..
Please enter the password: Password1
Invalid Password.. Try Again..
Please enter the password: Password1!
Valid Password

Write a Java program which does: Prompt user to input a password that follows the password requirements below; Verify the password to see if it satisfy the requ
Write a Java program which does: Prompt user to input a password that follows the password requirements below; Verify the password to see if it satisfy the requ

Get Help Now

Submit a Take Down Notice

Tutor
Tutor: Dr Jack
Most rated tutor on our site