绝对素数
题目描述
如果一个两位数是素数,且它的数字位置经过对换后仍为素数,则称为绝对素数,例如13,试编程求出所有两位数中的绝对素数。
输入
无
输出
若干行,每行一个绝对素数,从小到大输出
#include <bits/stdc++.h>
using namespace std;
//定义函数,判断素数
int sushu(int n) {
//用来标记n是否是素数,假设是素数
bool f = true;
int i;
for(i=2; i<=sqrt(n); i++) {
if(n%i==0) {
f = false;
break;
}
}
if(n <= 1) f = false;
return f;
}
int main() {
int i,c=0,x;
//循环所有的2位数,逐个判断是否是绝对素数
for(i=10; i<=99; i++) {
//求i倒过来的数
x = i % 10 * 10 + i / 10;
//cout<<x<<endl;//可以打印测试一下
if(sushu(i)==true && sushu(x)==true) {
cout<<i<<endl;
}
}
}