十一周回文素数

来源:互联网 发布:手机的视频剪辑软件 编辑:程序博客网 时间:2024/05/17 07:11

问题及代码:

 

/**Copyright (c) 2014,烟台大学计算机学院*All rights reserved.*文件名称:Annpion.cpp*作者:李莉*完成日期:2014年11月07日*版本号:v1*问题描述:计算并输出m以内的回文素数*程序输入:整数n*程序输出:n以内的回文素数*/#include <iostream>#include <cmath>using namespace std;bool ispalindrome (int);int reverse (int);bool isprimer (int);int main(){    int m,n;    cin>>m;    for (n=11;n<=m;n++)    {        if (ispalindrome(n)&&isprimer (n))            cout<<n<<'\t';    }    return 0;}bool isprimer (int n){    bool prime=true;    int k=int (sqrt(n));    for (int i=2;i<=k;i++)    {        if (n%i==0)        {            prime=false;        break;    }    }    return prime;}bool ispalindrome (int n){    bool palindrome=false;    if (reverse(n)==n)        palindrome=true;    return palindrome;}int reverse(int x){   int b=0,r;   while (x>0)   {       r=x%10;       b=b*10+r;       x=x/10;   }   return b;}


运行结果:

心得体会:这道题纠结了好久,就是没有弄清楚bool的用法,最后参考的贺老师的,自己又加以琢磨,才慢慢明白

0 0
原创粉丝点击