2017-10-08 3 views
0

私は初心者で、練習問題として、ユーザーがピンを正しく入力しようとするアプリケーションを作成しなければなりません。私が抱えている問題は、正しいピンが入力されると、アプリケーションがシャットダウンすることです。 3回目の試行後も同じことが起こります。したがって、「正しいピン」と「さようなら」は実際に最初に印刷されません。ここには私の瞬間があります。ありがとう。少なくとも与えるために、しかし、それは良いでしょう 正しいピンが入力された後、3回のアテンプト後にC#コンソールアプリケーションを終了する方法を教えてください。

から出るのプログラムを防ぐために

Console.ReadLine(); 

声明:あなたが置くことができ、ループの外

 int pin = 2456; 

     int attempts = 1; 


     bool correctPin = false; 

     while (attempts <= 3 && correctPin == false) 
     { 

      //Ask user to enter pin 
      Console.WriteLine("Please enter your pin"); 
      //read what user types 
      string guess = Console.ReadLine(); 
      int number1 = int.Parse(guess); 
      attempts++; 

      //if correct pin entered 
      if (number1 == pin) 
      { 

       correctPin = true; 
       Console.WriteLine("Correct Pin"); 
      } 

      //if incorrect pin entered 

      else if (number1 != pin) 
      { 
       Console.WriteLine("Incorrect Pin"); 
      } 
      else if (attempts > 3) 
      { 
       Console.WriteLine("Goodbye"); 

      } 

     } 

    } 
} 

}

答えて

0

ユーザーは、コンソールに「Enterを押して終了する...」のような文を書き込んで、アプリケーションが待機しているという手掛かりを得ます。

+0

ありがとうございます!私はConsole.ReadLine()を試みました。しかし今まで私が望むやり方をするためにはループの外になければならないことは分かっていませんでした。 – ChunLi

0

これ以上実行する必要がないため、コンソールウィンドウは閉じています。最後にConsole.Readline()を置く必要があります。

また、if文のReadline()のすぐ上にConsole.WriteLine("Goodbye");を置く必要があります。

+0

ありがとうございます。前の声明は働いた。しかし、Console.Readline()の上にConsole.WriteLine( "Goodbye")を置くと、それは私のために働かなかった。私はそれらを交換したが、ループの外側では以下の通りだ。乾杯:) Console.ReadLine(); Console.WriteLine( "Goodbye"); – ChunLi

+0

はい、私はifとwhileの中で意味していたステートメントから:) – OctoCode

関連する問題