第十一周项目六回文,素数(5)

来源:互联网 发布:淘宝联盟账户余额是0 编辑:程序博客网 时间:2024/06/04 19:24

问题及代码:

/*  * Copyright (c) 2014, 烟台大学计算机学院  * All rights reserved.  * 文件名称:test.cpp  * 作    者:郝俊宇   * 完成日期:2014年 11 月 10 日  * 版 本 号:v1.0  *  * 问题描述:将上面自定义的三个函数放到一个cpp文件中,而将main()函数放到另外一个cpp文件中,改造上面的工作,用多文件的方式组织程序。  * 程序输出: 对应的整数 */ #include<iostream>using namespace std;int main(){    int m;    cout<<"(1)1000以内的所有素数为:";    for(m=2; m<=1000; ++m)    {        if(isPrimer(m))            cout<<m<<" ";    }    cout<<endl;    cout<<"(2)1000以内所有的回文数为:";    for(m=2; m<=1000; ++m)    {        if(isPalindrome(m))            cout<<m<<" ";    }    cout<<endl;    cout<<"(3)1000以内所有的回文素数为:";    for(m=2; m<=1000; ++m)    {        if(isPalindrome(m)&&isPrimer(m))            cout<<m<<" ";    }    cout<<endl;    cout<<"(4)10000以内所有的可逆素数为:";    for(m=2; m<=10000; ++m)    {        if(reverse(m)&&isPrimer(m))            cout<<m<<" ";    }    cout<<endl;    return 0;}


 

#include<cmath>int reverse(int);bool isPalindrome(int);bool isPrimer(int);bool isPrimer(int n){    bool Primer=true;    int i,j;    j=sqrt(n);    for(i=2; i<=j; ++i)    {        if(n%i==0)        {            Primer=false;            break;        }    }    return Primer;}bool isPalindrome(int n){    bool Palindrome=false;    int i,j;    j=n;    i=0;    while(j>0)    {        i=i*10+j%10;        j=j/10;    }    if (i==n)        Palindrome=true;    return Palindrome;}int reverse(int x){    int m=0,r;    while(x>0)    {        r=x%10;        m=m*10+r;        x=x/10;    }    return m;}


运行结果:

0 0