做高铁到上海是哪个站:编程不会了

来源:百度文库 编辑:查人人中国名人网 时间:2024/05/04 11:49:48
C++程序设计,编程求所有的3位数素数,且该数是对称的。所谓对称是指一个数倒过来还是该数。例如375不是对称数,因为反过来成了573

// zd_22.cpp : Defines the entry point for the console application.
//

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

int main(int argc, char* argv[])
{
int m,k,i;

for(m=101;m<=1000;m=m+2)
{
k=sqrt(m);
for(i=2;(i<=k)&&(m%i!=0);i++);
if(i>k && m/100==m%10)
{
printf("%5d",m);
}
}
printf("\n");
return 0;
}
运行结果:
101 131 151 181 191 313 353 373 383 727 757 787 797 919 929
Press any key to continue

先判断是否是对称数,再判断是否是素数(可以有效地提高效率):
#include <iostream>
#include <cmath>
using namespace std;
int main(){
for(int i=101;i<=999;i++){
//判断是否是对称数
if(i%10!=i/100)
{
continue;
}
else{
//判断是否是素数
int t=int(sqrt(i));
for(int k=2;k<=t;k++){
if(i%k==0)
break;
}
if(k>t){
//找到了我们需要的数,输出
cout<<i<<endl;
}
}
}
return 0;
}