您的位置:首页 > 其它

第十一周项目六——1000以内的回文素数

2014-11-16 09:55 246 查看
/*

* Copyright (c) 2014, 烟台大学计算机学院

* All rights reserved.

* 文件名称:test.cpp

* 作 者:李晓凯

* 完成日期:2014年 11 月 16 日

* 版 本 号:v1.0

*

* 问题描述:根据函数计算并输出1000以内的回文素数

* 输入描述:

* 程序输出:输出1000以内的回文素数

*/

#include <iostream>
#include <stdio.h>
#include <cmath>
using namespace std;
bool ispalindrome(int );
bool isprimer(int );
int main()
{
int m;
for (m=2;m<=1000;++m)
if(ispalindrome(m)&&isprimer(m))
cout<<m<<"  ";
return 0;
}
bool ispalindrome(int n)
{
int t=0,r,j=n;
while(j>0)
{
r=j%10;
t=t*10+r;
j=j/10;
}
return (t==n);
}
bool isprimer(int n)
{
int r;
for (r=2; r<=sqrt(n); ++r)
if(n%r==0)
break;
if(r>sqrt(n))
return n;
}




学习总结:将两个函数并列摆下来,就顺其自然的挑选出了符合情况的数,刚开始在第一个函数中将”return (t==n);"写成了“return n;"结果就没算出来,现在明白要看看是否为回文数,是才能输出,哎╮(╯▽╰)╭,记住!!!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: