006 繰り返し(do〜while文) 020 解答例

import java.util.Scanner;

public class MultipleOfTwoExample {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int userInput;

        do {
            // ユーザーから2の倍数を入力させるメッセージを表示
            System.out.print("2の倍数を入力してください: ");

            // ユーザーからの入力を受け取る
            userInput = scanner.nextInt();

            // 入力が2の倍数でない場合はメッセージを表示
            if (userInput % 2 != 0) {
                System.out.println("入力が2の倍数ではありません。再度入力してください。");
            }

        } while (userInput % 2 != 0);

        // プログラムの終了前にScannerオブジェクトをクローズ
        scanner.close();

        // 入力が2の倍数の場合の処理
        System.out.println("入力された数値は2の倍数です。");
    }
}

このプログラムでは、do-while文を使用してユーザーに2の倍数を入力させています。ユーザーが2の倍数でない数を入力した場合は、再度入力を促すメッセージが表示されます。ユーザーが正しい入力(2の倍数)を行うと、プログラムは終了し、対応するメッセージが表示されます。

入力チェックのためのdo-while

ユーザーが正しい形式や範囲で入力するまで、何度でも再入力を求める仕組みとしてdo-while文を使うことができます。以下はその基本的な解説です。

1.Scannerを使ってユーザーからの入力を受け取る:

Scanner クラスを使用して、ユーザーからの入力を受け取ります。

Scanner scanner = new Scanner(System.in);

2.do-while文の構造:

do-while文の構造を理解し、最初にユーザーからの入力を受け取り、その後に条件を評価します。

do {
    // ユーザーからの入力を求めるメッセージを表示

    // ユーザーからの入力を受け取る

} while (条件式);

3.入力チェック:

ユーザーが入力した値が特定の形式や範囲に合致しているかどうかを判定します。

if (条件に合致していない場合) {
    // 入力が不正な場合のメッセージを表示
}

4.条件の設定:

ユーザーが正しい入力を行った場合は、whileの条件が false になり、ループを終了します。

} while (条件に合致していない場合);

これらのステップを組み合わせることで、入力チェックを行い、ユーザーに正しい入力を行わせるプログラムを構築できます。プログラム例として先程の「2の倍数を入力させ、入力が2の倍数でない場合は再度入力を求める」プログラムがその一例です。

「006 繰り返し」問題集リスト