2017-11-04 3 views
-2

number <= 20の場合は「true」を出力し、の場合はwhileのループを使用すると「false」を出力しますが、プログラムは実行を継続します。whileステートメントを使用したブレークループ

プログラムが特定の番号に達すると、プログラムを中断したい。 number > 26

プログラムのためのコードは次のとおりです。

public static void Main() 
{ 
    Console.WriteLine("Please enter a number"); 
    int numnber = Convert.ToInt32(Console.ReadLine()); 

    while (numnber <= 20) 
    { 
     Console.WriteLine("True"); 
     Console.ReadLine(); 
     int number1 = numnber++; 

     while (numnber > 20) 
     { 
      Console.WriteLine("False"); 
      Console.ReadLine(); 
     } 

    } 
} 
+0

'numnberを++使用して' numnberを 'デクリメントまたはインクリメントしてみてください;' –

+0

はちょうど休憩を追加します。必要ならば – Krishna

+1

=))とても面白いですが、あなたの内側の 'while'は本当に' number'をトラップし、 '20'という値とブームを渡すのを待っています!それはその中に閉じ込められ、決して飛び出すことはできません。 –

答えて

0

あなただけのこれを試してみてくださいbreak;を使用することができます。

 Console.WriteLine("Please enter a number"); 
     int numnber = Convert.ToInt32(Console.ReadLine()); 

     while (numnber <= 20) 
     { 
      Console.WriteLine("True"); 
      Console.ReadLine(); 
      int number1 = numnber++; 

      while (numnber > 20) 
      { 
       Console.WriteLine("False"); 
       Console.ReadLine(); 
      } 
      break; 
     } 

しかし、あなたは、このために、すべての後にループを壊しているので、このプログラミングは全く良くありません単純にこのようなif elseを使用することができます..

 Console.WriteLine("Please enter a number"); 
     int numnber = Convert.ToInt32(Console.ReadLine()); 

     if(numnber <= 20) 
     { 
      Console.WriteLine("True"); 
     } 
     else 
     { 
      Console.WriteLine("False"); 
     } 
+0

これは良い答えではありません。あなたが1回の反復でそれを抜け出すことを確実に知っているなら、なぜループを開始するのですか? – CodingYoshi

+0

はい...だから、私はループを使用する必要がないというコメントを書いています....そして私の答えも編集しました –

0

@King王が述べたように、あなたの説明は、あなたの主要な問題は

プログラムは

を実行し続けているが、26に到達することはないだろうしなければなりません。 whileの内部に貼り付けられましたが、これはの状態に置き換えてください。あなたは番号のチェックをexecしなければならない場合

最後に、あなたが使用することができ、少なくとも1時間はdo while

do 
{ 
    if (numnber <= 20) 
    { 
     Console.WriteLine("True"); 
    } 
    else if (numnber > 20) 
    { 
     Console.WriteLine("False"); 
    } 

    numnber++; 

    Console.WriteLine("number: {0}", numnber); 

} while (numnber < 26); 

Console.ReadLine(); 
0

はあなたのすべてをありがとうございましたが、問題の解決策は次のようになります。コードは次のとおりです。

`public static void Main() { int number; do { Console.WriteLine( "数字を入力してください"); 番号= Convert.ToInt32(Console.ReadLine());

  do 
      { 

       Console.WriteLine("True value. True value is supplied"); 
       Console.ReadLine(); 
       number++; 

       while (number >= 21 && number < 27) 
       { 
        Console.WriteLine("False value. False value is supplied"); 
        Console.ReadLine(); 
        number++; 
       } 

      } while (number <= 20); 
     } while (number > 27); 
    }` 
+1

参照[this](http://stackoverflow.com/editing-help)コードブロックを使用します。 –

0
/*Your question isn't clear enough. if your case is to print true or false for given condition until the number is less the user entered value you can use this... You can change the while loops condition according to your criteria*/ 

     public static void Main() 
     { 
      Console.WriteLine("Please enter a number"); 
      int numnber = Convert.ToInt32(Console.ReadLine()); 
      while (numnber < 26) 
      { 
       if (numnber <= 20) 
       { 
        Console.WriteLine("true"); 


       } 
       else 
       { 
        Console.WriteLine("false"); 
       } 
       numnber++; 
      } 
     } 
関連する問題