4

この割り当てについてサポートが必要です。**これが私がプログラムに必要なことです:

  • ユーザーに反復回数を求めるプログラムを作成します。
  • その後、プログラムはそれを何度もループする必要があります。
  • ループごとに、プログラムはユーザーに数値の入力を求め、それを現在の合計に追加する必要があります。
  • 完了したら、現在の合計を印刷します。

ユーザーが入力した回数だけプログラムをループさせることができません。私はこれが簡単な修正であることを知っていますが、私はそれを理解できないようです。ループに間違ったステートメントを使用していますか?

Scanner guess = new Scanner(System.in);

int count =0;
int sum=0;
int num;

System.out.println("Enter a number");
num = guess.nextInt();

for(count =0; count <= num; count++)
{
    sum +=num;
    System.out.println("Your results are:"+sum);
}
4

2 に答える 2

5

0から開始する場合は、変更する必要があります

for(count =0; count <= num; count++)

for(count =0; count < num; count++)

これは0から始まるため、これが最初の反復であり、1が2番目の反復です。

また、毎回ユーザーに質問し続ける必要があります。したがって、ループ内で次のようなことを行う必要があります。

sum += guess.nextInt();

最後に、最後に、毎回合計を印刷する必要はありません。したがって、ループの後で、合計を出力します。

持っているとユーザーに別の番号を尋ねると思ったかもしれませんがsum += num、numはユーザーが入力した最初の番号です(変更されません)。反復ごとにユーザーの入力を取得する必要があります。

于 2013-03-24T17:55:35.927 に答える
1

あなたはあなたのステートメントで<=使用すべき場所を使用しています。そうでない場合は、ループを1回から何度も回ります。ループ内に追加する番号の入力を求め、そこで実行中の合計を追跡するための適切なコードを含める必要があります。<for

このようなもの:

Scanner guess = new Scanner(System.in);

int count =0;
int sum=0;
int num, N;

System.out.println("How many numbers will you enter?");
N = guess.nextInt();

for(count =0; count < N; count++)
{
    System.out.println("Enter a number");
    num = guess.nextInt();
    sum +=num;
}

    System.out.println("The sum of the numbers entered is:"+sum);
于 2013-03-24T17:53:05.210 に答える