第十一周项目6-回文、素数(输出10000以内的可逆素数)
2014-11-09 12:11
543 查看
/* *Copyright (c) 2014,烟台大学计算机学院 *All rights reserved. *文件名称: test.cpp *作 者:满星辰 *完成日期:2014年11月9日 *版本号:v1.0 * *问题描述:如果一个素数的反序数仍为素数,则称它为可逆素数。 输出10000以内所有可逆素数 *输入描述: 无输入 *程序输出:输出10000以内所有可逆素数 */ #include <iostream> #include <cmath> using namespace std; int reverse(int x); bool isprimer(int m);//判断是否为素数 bool isPaOrPri(int x);//判断反序数是否为素数 int main() { for(int m=2; m<=10000; ++m) { if(isPaOrPri(m)&&isprimer(m)) { cout<<m<<'\t'; } } return 0; } int reverse(int x) { int m=0; while(x>0) { m=m*10+x%10; x=x/10; } return m; } bool isprimer(int n) { bool primer=true; int k=int(sqrt(n)); for(int i=2;i<=k;++i) { if(n%i==0) { primer=false; break; } }return primer; } bool isPaOrPri(int x) { bool PaOrPri=false; int n=reverse(x); if(isprimer(n))PaOrPri=true; return PaOrPri; }
运行结果:
学习心得:
用了三个自定义函数,感觉有点混乱了
不过要是不用自定义,那肯定不只是混乱了
相关文章推荐
- 第十一周项目六——回文,素数(4)球10000以内的所有可逆素数
- 第11周项目6-回文、素数 输出1000以内的所有素数、回文数、回文素数和10000以内的所有可逆素数(多文件组织程序)
- 第11周项目6-回文、素数 输出1000以内的所有素数、回文数、回文素数和10000以内的所有可逆素数
- 第十一周项目6-回文、素数(输出1000以内所有回文数)
- 第十一周项目六——回文,素数(4)(输出1000以内的所有回文数)
- 第十一周 项目6:(4)求10000以内的所有可逆素数
- 第十一周项目六——回文,素数(4)(输出1000以内的所有素数)
- 第十一周项目六(四):输出1000以内的所有回文素数
- 第十一周项目六——回文,素数(4)输出1000以内的所有回文素数
- 第十一周 项目6:(4)输出1000以内的所有回文素数
- 第十一周项目6-回文、素数(输出1000以内所有回文素数)
- 第十二周上机项目4(3):输出10000以内的所有回文素数
- 第十一周项目六 (3+)输出1000以内所有回文素数
- 第十一周项目6-回文、素数(输出1000以内所以素数)
- 第十一周 项目六:输出1000以内的所有回文素数
- 提高篇第一讲项目6.4——编制函数输出1000以内的所有素数,回文数,回文素数,可逆素数
- 第11周 项目6-7 输出10000以内的所有可逆素数
- 第十一周项目6.4.3输出1000以内所有的回文素数
- 第十一周项目6 (4)输入一个数,输出这个数以内的所有回文素数
- 第十一周项目 6 回文,素数(1000以内的回文素数)