Я довольно новичок в Java и столкнулся с некоторыми трудностями. Поэтому я получил указание запустить программу, в которой вы войдете в систему, введя пин-код и название школы. У вас есть 3 попытки для каждой, пока не появится сообщение о том, что вход не выполнен. Моя проблема Все хорошо, но в разделе PIN-код , (userInputPin == PIN) автоматически вводится "Попытка # 2 - введите название школы - неверно. при первая правильная попытка. При написании правильного названия школы также отображается ошибка входа в систему, когда он должен уведомить вас о том, что вы вошли в систему. В чем ошибка?
Примечание: игнорировать комментарий, я ' исправлю их.
public class Login {
public static final int PIN = 1234; //Declaring constant for fixed PIN
//Declaring constant for first school name
public static final String FIRST_SCHOOL = "St. Charles";
public static void main(String[] args) {
Scanner kb = new Scanner (System.in); //Declaring scanner object
int attempts = 1; //Declaring variable for attempt number
//Printing first paragraph section of the program
System.out.println("This program simulates logging into a bank account,"
+ "\nasking certain questions for security.\n");
// PIN Section
while(attempts<=3) //While loop
{
System.out.print("Attempt #"+attempts+" - Enter PIN: ");
int userInputPin = kb.nextInt(); //User inputs pin number
//Conditional situations
if(userInputPin==PIN)
{
attempts=1;
while(attempts<=3)
{
System.out.print("\nAttempt #"+ attempts+" - Enter your first school: ");
String userInputSchool = kb.next();
//Conditional situations
if(userInputSchool.equals(FIRST_SCHOOL))
{
System.out.println("\nYou're logged in.");
}
else{
if(attempts==3)
{
System.out.println("\nLogin failed.");
}
else
{
System.out.println("Incorrect.\n");
}
}
attempts++;
}
}
else{
if(attempts==3){
System.out.println("\nLogin failed.");
}
else{
System.out.println("Incorrect.\n");
}
}
attempts++; //Increments attempt by 1 when PIN is incorrect
}