第11周上机实践项目6——回文、素数(4~5)
2014-11-10 10:37
387 查看
(1)输入1000以内所有素数
问题及代码
运行结果:
(2)输入1000以内的所有回文数
问题及代码
运行结果:
(3)输出1000以内所有回文素数
问题及代码
运行结果:
(4)求10000以内所有的所有可逆素数
问题及代码
运行结果:
(5)多文件版
问题及代码
/* * Copyright (c) 2014, 烟台大学计算机学院 * All rights reserved. * 文件名称:test.cpp * 作 者:辛彬 * 完成日期:2014年 11 月 10 日 * 版 本 号:v1.0 * * 问题描述:编制main函数,用于判断参数是否为素数 。 * 输入描述:没有输入。 * 程序输出:1000以内所有素数。 */ #include <iostream> using namespace std; bool isPrimer(int x); int main() { for(int m=1;m<=1000;++m) if(isPrimer(m)) cout<<m<<" "; return 0; } bool isPrimer(int x) { if(x<2) return false; for(int i=2; i*i<=x; ++i) { if(x%i==0) return false; } return true; }
运行结果:
(2)输入1000以内的所有回文数
问题及代码
/* * Copyright (c) 2014, 烟台大学计算机学院 * All rights reserved. * 文件名称:test.cpp * 作 者:辛彬 * 完成日期:2014年 11 月 10 日 * 版 本 号:v1.0 * * 问题描述:编制一个函数isPalindrome(),用于判断参数是否为回文数 。 * 输入描述:没有输入。 * 程序输出:1000以内的所有回文数。 */ #include <iostream> using namespace std; bool isPalindrome(int x); int main() { for(int m=0;m<=1000;++m) if(isPalindrome(m)) cout<<m<<" "; return 0; } bool isPalindrome(int x) { int m=0,r,hui; hui=x; for(; x>0; x=x/10) { r=x%10; m=m*10+r; } if(hui==m) return true; else return false; }
运行结果:
(3)输出1000以内所有回文素数
问题及代码
/* * Copyright (c) 2014, 烟台大学计算机学院 * All rights reserved. * 文件名称:test.cpp * 作 者:辛彬 * 完成日期:2014年 11 月 10 日 * 版 本 号:v1.0 * * 问题描述:判断参数是否为回文素数 。 * 输入描述:没有输入。 * 程序输出:1000以内的所有回文素数。 */ #include <iostream> using namespace std; bool isPalindrome(int x); int main() { for(int m=0; m<=1000; ++m) if(isPalindrome(m)) cout<<m<<" "; return 0; } bool isPalindrome(int x) { int m=0,r,hui; hui=x; for(; x>0; x=x/10) { r=x%10; m=m*10+r; } if(hui==m) { if(hui<2) return false; for(int i=2; i*i<=hui; ++i) { if(hui%i==0) return false; } return true; } else return false; }
运行结果:
(4)求10000以内所有的所有可逆素数
问题及代码
/* * Copyright (c) 2014, 烟台大学计算机学院 * All rights reserved. * 文件名称:test.cpp * 作 者:辛彬 * 完成日期:2014年 11 月 10 日 * 版 本 号:v1.0 * * 问题描述:判断参数是否为回文素数 。 * 输入描述:没有输入。 * 程序输出:10000以内的所有可逆素数。 */ #include <iostream> using namespace std; int reverse(int x); bool isPrimer(int x); int main() { int n; cout<<"1000以内所有可逆素数为"; for(int m=0; m<=10000; ++m) { if(isPrimer(m)) { n=reverse(m); if(isPrimer(n)) cout<<m<<" "; } } return 0; } int reverse(int x) { int m=0,r; for(; x>0; x=x/10) { r=x%10; m=m*10+r; } return m; } bool isPrimer(int x) { if(x<2) return false; for(int i=2; i*i<=x; ++i) { if(x%i==0) return false; } return true; }
运行结果:
(5)多文件版
相关文章推荐
- 第11周上机实践项目6——回文、素数(1~3)
- 第11周上机实践项目1——函数版星号图
- 第11周项目6-回文、素数 回文数
- C++第11周项目3(5)——万以内回文素数
- 第11周项目6-回文、素数-可逆素数
- 第11周上机实践项目2——求最大公约数
- 第11周项目六 回文~素数(3)
- 第11周上机实践项目5——当年第几天
- 第11周项目六 回文~素数(5)
- 第11周 项目6-回文.素数(2)
- 第11周上机实践项目4——特殊三位数
- 第11周项目6-回文、素数-回文素数
- 2014秋C++第11周项目6参考-回文、素数
- 第11周项目3:回文,素数
- 第11周项目6-回文、素数 反序数
- 第11周项目六 回文~素数(2)
- 第十一周上机项目六(4)回文素数
- 第11周项目6-回文、素数-回文数
- 第十一周上机项目6-1 回文 、素数
- 第11周项目六 回文~素数(7)