0

整数を読み取り、2 と入力値の間のすべての偶数の合計を出力するアプリケーションを設計しようとしています。誰かが最後のビットで私を助けることができますか?!

import java.util.Scanner;

public class IntegerValue {

    // main method
    public static void main(String[] args) {

        // Data fields
        int a;
        // end

        Scanner sc = new Scanner(System.in);

        System.out.println("Enter an integer greater than 1");
        a = sc.nextInt();
        if (a <= 1) {
            System.out.println("Input Value must not be less than 2");
        }
        while (a > 1) {
            int sum = 0;
            if (a % 2 == 0) {
                sum += a;
                a = a - 1;
            }
            System.out.println(sum);
        }

    }
}
4

2 に答える 2

1

sumループ外で変数を定義する必要がありますwhile。そうしないと、ループの繰り返しごとに再初期化されます。また、最終的な合計が必要な場合は、while ループの外側に合計を出力する必要があります。ここにコードの更新があります。試してみてください:

 int sum = 0;
 while (a > 1) {
            if (a % 2 == 0) {
                sum += a;
                a = a - 1;
            }
        }
 System.out.println(sum);
于 2013-08-28T03:55:15.947 に答える