import java.util.Scanner;
public class Main {
public static void main(String[] args) {
// スキャナーを使ってユーザーからの整数入力を読み取る
Scanner scanner = new Scanner(System.in);
System.out.print("整数を入力してください: ");
int number = scanner.nextInt(); // 整数の入力を読み取り
// 整数が3で割り切れかつ5で割り切れる場合、「3と5の両方で割り切れます」と表示
if (number % 3 == 0 && number % 5 == 0) {
System.out.println("3と5の両方で割り切れます");
} else {
System.out.println("割り切れません");
}
}
}
このプログラムでは、ユーザーが入力した整数に対して条件判定を行い、適切なメッセージを表示します。剰余演算子 %
を使用して整数が3と5で割り切れるかどうかを判定し、if
ステートメントを使用して条件を処理しています。
複数の判定式の論理積
ここではif文の判定式にboolean型の変数を入れてその論理積をとるのではなく、比較式の論理積をとっています。
複数の判定式の論理積は、複数の条件がすべて満たされているかを判定するために使用される論理演算です。Javaでは &&
演算子を使用して表現されます。この論理演算は次のような特性を持っています:
- 複数の条件式: 複数の条件を組み合わせて、それらがすべて真であるかどうかを判定します。
- 短絡評価: 論理積演算子は、条件を左から右に評価し、最初に偽の条件が見つかった時点で評価を停止します。これにより、無駄な評価を避けることができます。
- 真偽値の返却: 複数の条件がすべて真の場合、論理積演算子の結果は真(
true
)になります。少なくとも1つの条件が偽の場合、結果は偽(false
)になります。
複数の判定式の論理積を使用すると、すべての条件が同時に満たされる場合に特定のアクションを実行することができます。これは特に制御フローの中で条件を組み合わせたり、複雑な条件を扱う際に便利です。以下は論理積演算子 &&
の使用例:
int x = 5;
int y = 10;
// xが5であり、yが10である場合に条件が真となります
if (x == 5 && y == 10) {
System.out.println("xは5で、yは10です");
} else {
System.out.println("条件が成立しません");
}
この例では、2つの条件式が x == 5
と y == 10
で、論理積演算子 &&
によって結合されています。両方の条件が真の場合、条件が成立し、適切なメッセージが表示されます。条件のどちらかが偽の場合、条件は成立しません。
論理積演算子は、プログラム内で複数の条件を結合して複雑な条件を作成する際に非常に有用です。