卡车车牌号

发布时间 2023-09-18 20:37:52作者: 菜鸟昂

一辆卡车违犯交通规则,撞人逃跑。现场三人目击事件,但都没记住车号,只记下车号的一些特征。甲说:牌照的前两位数字是相同的;乙说:牌照的后两位数字是相同的;丙是位数学家,他说:四位的车号刚好是一个整数的平方。请根据以上线索求出车号。

#include <stdio.h>
#include <math.h>

int main() {
    for (int i = 1000; i < 10000; i++) {
        // 提取车号的各个数字
        int a = i / 1000;       // 千位
        int b = (i / 100) % 10; // 百位
        int c = (i / 10) % 10;  // 十位
        int d = i % 10;         // 个位

        // 检查甲和乙的条件
        if (a == b && c == d) {
            // 计算车号的平方根
            double sqrt_i = sqrt(i);
            
            // 检查丙的条件
            if (sqrt_i == floor(sqrt_i)) {
                printf("满足条件的车号是:%d\n", i);
            }
        }
    }

    return 0;
}