我的代码错哪里了?
题目描述
纯粹素数是这样定义的:一个素数,去掉最高位,剩下的数仍为素数,再去掉剩下的数的最高位,余下的数还是素数。这样下去一直到最后剩下的个位数也还是素数。求出所有小于3000的四位的纯粹素数。
输入
无
输出
按从小到大的顺序输出若干个纯粹素数,每行一个。
我的代码:
```c++
#include<iostream>
using namespace std;
int quwe(int x)
{
int a = 1;
for (int i = x; i!=0; i%=10) {
a*=10;
}
return x%(a/10);
}
int ischuencuiPrime(int x)
{
if(x==0)return 0;
if(x==1)return 0;
if(x%2==0)return 0;
if(x%3==0)return 0;
for (int i = 4; i*i <= x; i+=6) {
if(x%i==0)return 0;
}
if(x/10==0)return 1;
int res;
res = quwe(x);
return ischuencuiPrime(res);
}
int main()
{
for (int i = 1001; i < 3000; i++) {
if(ischuencuiPrime(i))
{
cout<<i<<endl;
}
}
return 0;
}
```