0

これはループのない単純なバージョンです。「パスワードが間違っています。もう一度やり直してください」のようにループさせるにはどうすればよいですか。ユーザーがプログラムを停止する代わりに正しいパスワードを入力するまで(または停止する前に3回のチャンスを与えるまで)?

    import java.util.Scanner;
public class helloworld2
{
    public static void main(String[] arg)
    {
        Scanner q = new Scanner(System.in);
        long Pass;
        boolean auth = true;

        System.out.println("Enter Password :");
        Pass = q.nextLong();

        if ( Pass != 1234 )
           {
           System.out.println("Wrong Password!");
           auth = false;
           }
        else
           {
           System.out.println("Password Confirmed.");
           auth = true;
           }

        if (auth) {
            ////blablabla
            }

        else
          {
            return;
          }                 
    }
}
4

1 に答える 1

3
public class helloworld2
{
    public static void main(String[] arg)
    {
        Scanner q = new Scanner(System.in);
        long Pass;
        boolean auth = true;
        boolean rightPassword = false;
        while(!rightPassword){//repeat until passwort is correct
          System.out.println("Enter Password :");
          Pass = q.nextLong();

          if ( Pass != 1234 )
          {
            System.out.println("Wrong Password!");
            auth = false;
          }
          else
          {
            rightPassword = true;//let the loop finish
            System.out.println("Password Confirmed.");
            auth = true;
          }
        }
        // Here do what you want to do
        //because here the user has entered a right password                 
    }
}
于 2013-02-04T17:50:38.293 に答える