回文素数

2020-04-21  本文已影响0人  晓晓桑

10301是个5位的素数。它有个特点,把数字倒过来还是它本身,具有这样特征的素数,我们称之为:回文素数。
10501
10601
11311
这些都是5位的回文素数(回文质数)。
请你计算一下,像这样的5位数的回文素数,一共有多少个?

#include <stdio.h>
#include <string.h>
#include <stdlib.h>


int fun(int num);

int main(void) {
    int m = 0;
    for (int i = 10000; i < 99999; ++i) {
        if (fun(i)) {
            //如果是素数,判断对称
            if (i / 10000 == i % 10 && ((i / 1000) % 10) == ((i % 100) / 10)) {
                ++m;
            }
        }
    }
    printf("%d\n", m);//93
    return 0;
}

//判断是否为素数
int fun(int num) {
    for (int i = 2; i < num; ++i) {
        if (num % i == 0) {
            return 0;
        }
    }
    return 1;
}
上一篇 下一篇

猜你喜欢

热点阅读