您的位置:首页 > 其它

第十一周 项目六:输出1000以内的所有回文素数

2014-11-07 18:43 417 查看
问题及代码:

/*
* Copyright (c) 2014, 烟台大学计算机学院
* All rights reserved.
* 文件名称:Project4.cpp
* 作    者:李楠
* 完成日期:2014年11月7日
* 版 本 号:v1.0
*
* 问题描述:编制一个返回值为bool型的函数isPrimer(),用于输出1000以内的回文素数(是回文素数返回true,否则false),自编main函数用于测试;
* 输入描述:一个整数
* 程序输出:略
*/
#include <iostream>
using namespace std;
bool isPalindrome(int);
bool isPrimer(int);
int reverse(int x);
int main()
{
int p,j;
p=1000;
cout<<"1000以内的回文素数有:"<<endl;
for(j=10;j<=p;++j)
{
if(isPalindrome(j)&&isPrimer(j))
cout<<j<<"  ";
}
return 0;
}
bool isPalindrome(int n)
{
int r,l=0,m;
m=n;
bool ispalindrome=false;
while(m>0)
{
r=m%10;
l=l*10+r;
m=m/10;
}
if(l==n)
ispalindrome=true;
return ispalindrome;
}
bool isPrimer(int n)
{
int l,i;
bool isprimer=true;
for(i=2;i<n;++i)
{
l=n%i;
if(l==0)
{
isprimer=false;
break;
}
}
return isprimer;
}

运行结果:



知识点总结:

在前两个关于素数和回文数的基础上,很轻松就能完成这个程序,感觉如此顺畅,真是不多见!!!

学习心得:

有了同伴的精神支持,写再长的程序也不会感觉累,虽然会有分歧,但是我萌依然是棒棒的好基友啊~好盆友~
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐