この記事では、C言語を使って数値が4の倍数かどうかを判定する方法を紹介します。
数値が4の倍数かどうかを判定する方法
プログラミングにおいて、ある数値が4の倍数かどうかを判定する方法はいくつかあります。
ここでは、剰余演算子を使用する方法、ビット演算を使用する方法、論理演算を使用する方法の3つを紹介します。
方法1: 剰余演算子を使用する方法
剰余演算子(%)を使用することで、ある数値が4の倍数かどうかを判定することができます。
剰余演算子は、2つの数値の除算の余りを求める演算子です。
例えば、数値を4で割った余りが0であれば、その数値は4の倍数となります。
以下に、剰余演算子を使用して数値が4の倍数かどうかを判定するサンプルコードを示します。
#include <stdio.h>
int main() {
int num;
printf("数値を入力してください: ");
scanf("%d", &num);
if (num % 4 == 0) {
printf("%dは4の倍数です。\n", num);
} else {
printf("%dは4の倍数ではありません。\n", num);
}
return 0;
}
上記のコードでは、ユーザーに数値を入力してもらい、その数値が4の倍数かどうかを判定しています。
剰余演算子を使用して、入力された数値を4で割った余りが0かどうかを判定し、結果を出力しています。
方法2: ビット演算を使用する方法
ビット演算を使用することで、ある数値が4の倍数かどうかを判定することもできます。
具体的には、ビット演算のAND演算子
(&)を使用します。
4の倍数の場合、その数値の下位2ビットは必ず0になります。
したがって、数値の下位2ビットが0であるかどうかを判定することで、4の倍数かどうかを判定することができます。
以下に、ビット演算を使用して数値が4の倍数かどうかを判定するサンプルコードを示します。
#include <stdio.h>
int main() {
int num;
printf("数値を入力してください: ");
scanf("%d", &num);
if ((num & 3) == 0) {
printf("%dは4の倍数です。\n", num);
} else {
printf("%dは4の倍数ではありません。\n", num);
}
return 0;
}
上記のコードでは、ユーザーに数値を入力してもらい、その数値が4の倍数かどうかを判定しています。
ビット演算のAND演算子
を使用して、入力された数値の下位2ビットが0かどうかを判定し、結果を出力しています。
方法3: 論理演算を使用する方法
論理演算を使用することでも、ある数値が4の倍数かどうかを判定することができます。
具体的には、論理演算の論理積(&&)を使用します。
4の倍数の場合、その数値は必ず2の倍数でもあります。
したがって、数値が2の倍数かつ4の倍数であるかどうかを判定することで、4の倍数かどうかを判定することができます。
以下に、論理演算を使用して数値が4の倍数かどうかを判定するサンプルコードを示します。
#include <stdio.h>
int main() {
int num;
printf("数値を入力してください: ");
scanf("%d", &num);
if (num % 2 == 0 && num % 4 == 0) {
printf("%dは4の倍数です。\n", num);
} else {
printf("%dは4の倍数ではありません。\n", num);
}
return 0;
}
上記のコードでは、ユーザーに数値を入力してもらい、その数値が4の倍数かどうかを判定しています。
論理演算の論理積を使用して、入力された数値が2の倍数かつ4の倍数であるかどうかを判定し、結果を出力しています。
以上が、数値が4の倍数かどうかを判定する方法の3つの方法です。