2017-02-28 12 views
-1

私はまだJavaを学び始めており、whileループに慣れています。出力文を複数回ではなく1回だけ表示したい。たとえば、文は言う必要があります。 "1と5の間であっても整数である:2 4"出力回線はwhileループを使用して繰り返されますか?

の代わり:1と5の間 「でも整数である:1と5の間でも整数である: を1と5の間の整数も次のとおりです。 4 "

私がここで間違っていることについて何らかのフィードバックを得ることができたら、それは感謝します。ありがとう

//Declare variables 
int n1, n2, sumOdd = 0; 
int sum = 0; 
int sumSquares = 0; 

//Part B 
int count = n1; 
while (count < n2) 
{  
    if (count % 2 ==0) 
    { 
     System.out.println(count); 
    } 
    count++; 
    System.out.println("Even integers between " + n1 + " and " + n2 + " are: "); 
} //end loop 
+0

print文を 'while'ループの外側(および後)に移動します。また、配列やコレクションを使用して、印刷する準備ができるまで、一致する数値をキャッシュする必要があります。 –

答えて

2

ループの前にint配列またはコレクションを作成し、whileループで偶数を見つけたら配列/コレクションに数値を追加します。

ループwhileのループの後、出力はもちろん、見つかった番号で1回だけ出力されます。

私はそれは簡単なことだと思うし、私はあなたに実装の部分を残します。

1

あなたはそれのうちwhileループの最後の部分を取る必要があります。

//Part B 
    System.out.println("Even integers between " + n1 + " and " + n2 + " are: "); 
    int count = n1; 
    while (count < n2) {  
    if (count % 2 ==0) { 
     System.out.print(" " + count); 
    } 
    count++; 
    } 

あなたが偶数の間にカンマを望んでいることを言及しなかったとして、その後、printprintlnを交換し

+0

私はこのようにはしません。通常の場合でも動作します。最初の行は何らかの形で印刷されているので、エラー/例外処理の要件にはあまり適していません。または、他のいくつかの要件があります。たとえば、見つかった数字の合計数を出力してください。 – Kent

+0

あなたは正しいです@ケントですが、この場合は初心者がどのように作業するかの経験を得るだけで十分ですループとその結果 –

0
十分なはずです

これはあなたの目標を達成するためのさまざまな方法です。迅速な解決策はSystem.printとSystem.printlnを()()あなたのwhileループの前で

System.out.println("Even integers between " + n1 + " and " + n2 + " are: ");

を入れて、と置き換えることであろう。

0
int n1, n2, sumOdd = 0; 
int sum = 0; 
int sumSquares = 0; 
System.out.print("Even integers between " + n1 + " and " + n2 + " are: "); 

//Part B 
int count = n1; 
while (count < n2) 
{  
    if (count % 2 == 0) 
    { 
     System.out.print(count); 
    } 
    count++; 
} //end loop 
+1

OPは明らかに初心者であるため、少し説明を追加する必要があります –

関連する問題