View Code of Problem 92

#include <stdio.h>

#include <string>
using namespace std;
int getNum(int up) {
    int getFlag;
    while (1) {
        getFlag = 1;
        for (int i = 2; i * i <= up; i++) {
            if (!(up % i)) {
                getFlag = 0;
                break;
            }
        }
        if (getFlag)
            return up;
        else
            up++;
    }
}
int main() {
    int m, n;
    scanf("%d %d", &m, &n);
    if (m > n) {
        m += n;
        n = m - n;
        m -= n;
    }
    string input;
    int outFlag = 1;
    for (int i = m; i <= n; i++) {
        int j, k;
        i = getNum(i);
        input = to_string(i);
        for (j = 0, k = input.length() - 1; j < k; j++, k--)
            if (input[j] != input[k])
                break;
        if (j >= k) {
            if (outFlag % 5) {
                printf("%6d", i);
                outFlag++;
            } 
            else {
                printf("%6d\n", i);
                outFlag = 1;
            }
        }
    }
    return 0;
}

Double click to view unformatted code.


Back to problem 92