다음 코드에는 암호를 계속 입력하기 위해 사용자가 입력해야하는 미리 설정된 암호가 있습니다. 그러나 설정된 패스워드 (PASS1-PASS3)가 입력되면 코드는 무관하게 do-while으로 이동합니다. 잠시 동안 암호가 올바르지 않아 잘못된 암호 줄을 찾지 못하게하려면 어떻게해야합니까?C# 콘솔 응용 프로그램 암호 입력 검사기
// Program asks user to enter password
// If password is not "home", "lady" or "mouse"
// the user must re-enter the password
using System;
public class DebugFour1
{
public static void Main(String[] args)
{
const String PASS1 = "home";
const String PASS2 = "lady";
const String PASS3 = "mouse";
String password;
String Password;
Console.Write("Please enter your password ");
password = Console.ReadLine();
do
{
Console.WriteLine("Invalid password enter again: ");
password = Console.ReadLine();
} while (password != PASS1 || password != PASS2 || password != PASS3);
Console.WriteLine("Valid password");
Console.ReadKey();
}
}
While 루프를 AND AND &로 바꿉니다. 'while (password! = PASS1 && password! = PASS2 && password! = PASS3); '여기서 do-while 루프는 필요 없습니다. while 루프가 작동합니다. –