【C言語】3の倍数と3が付く数字を判定する方法を解説

この記事では、C言語で3の倍数と3が付く数字を判定する方法を解説します。

目次から探す

3の倍数の判定方法

剰余演算子を使った方法

C言語で3の倍数を判定する方法の一つは、剰余演算子を使う方法です。

剰余演算子は % で表され、2つの数値の割り算の余りを求めることができます。

以下に、剰余演算子を使って3の倍数を判定するサンプルコードを示します。

#include <stdio.h>
int main() {
    int num;
    printf("整数を入力してください: ");
    scanf("%d", &num);
    if (num % 3 == 0) {
        printf("%dは3の倍数です。\n", num);
    } else {
        printf("%dは3の倍数ではありません。\n", num);
    }
    return 0;
}

上記のコードでは、ユーザーに整数を入力してもらい、その数が3の倍数かどうかを判定しています。

剰余演算子 % を使って、入力された数を3で割った余りが0かどうかを判定しています。

if文を使った方法

もう一つの3の倍数の判定方法は、if文を使う方法です。

if文を使って、数値が3の倍数かどうかを判定し、条件に応じて処理を行います。

以下に、if文を使って3の倍数を判定するサンプルコードを示します。

#include <stdio.h>
int main() {
    int num;
    printf("整数を入力してください: ");
    scanf("%d", &num);
    if (num % 3 == 0) {
        printf("%dは3の倍数です。\n", num);
    } else {
        printf("%dは3の倍数ではありません。\n", num);
    }
    return 0;
}

上記のコードでは、ユーザーに整数を入力してもらい、その数が3の倍数かどうかを判定しています。

if文を使って、入力された数を3で割った余りが0かどうかを判定し、結果に応じてメッセージを表示しています。

3が付く数字の判定方法

数値を文字列に変換して判定する方法

C言語では、数値を文字列に変換するために sprintf 関数を使うことができます。

この関数を使って数値を文字列に変換し、文字列中に 3 が含まれているかどうかを判定することで、3が付く数字を判定することができます。

以下に、数値を文字列に変換して3が付く数字を判定するサンプルコードを示します。

#include <stdio.h>
#include <string.h>
int main() {
    int num;
    char str[10];
    printf("整数を入力してください: ");
    scanf("%d", &num);
    sprintf(str, "%d", num);
    if (strstr(str, "3") != NULL) {
        printf("%dは3が付く数字です。\n", num);
    } else {
        printf("%dは3が付く数字ではありません。\n", num);
    }
    return 0;
}

上記のコードでは、ユーザーに整数を入力してもらい、その数が3が付く数字かどうかを判定しています。

sprintf 関数を使って、入力された数を文字列に変換し、strstr 関数を使って文字列中に 3 が含まれているかどうかを判定しています。

剰余演算子を使った方法

先ほどの3の倍数の判定方法と同様に、剰余演算子を使って3が付く数字を判定することもできます。

以下に、剰余演算子を使って3が付く数字を判定するサンプルコードを示します。

#include <stdio.h>
int main() {
    int num;
    printf("整数を入力してください: ");
    scanf("%d", &num);
    if (num % 10 == 3 || num / 10 == 3) {
        printf("%dは3が付く数字です。\n", num);
    } else {
        printf("%dは3が付く数字ではありません。\n", num);
    }
    return 0;
}

上記のコードでは、ユーザーに整数を入力してもらい、その数が3が付く数字かどうかを判定しています。

剰余演算子 % を使って、入力された数を10で割った余りが3か、10で割った商が3かどうかを判定しています。

以上が、C言語で3の倍数と3が付く数字を判定する方法の解説です。

それぞれの方法を使って、目的に応じた判定を行うことができます。

目次から探す