您的位置:首页 > 其它

输出10000以内的素数、回文数、回文素数

2012-11-19 07:42 162 查看
/*   
* Copyright (c) 2011, 烟台大学计算机学院   
* All rights reserved.   
* 作    者:李蒙    
* 完成日期:2012 年11  月 19 日   
* 版 本 号:v1.0   
* 输入描述:无  
  
* 问题描述:编制一个返回值为bool型的函数isPrimer(),  
用于判断参数是否为素数,isPalindrome()用于判断参数是否是回调用函数回答以下问题(可以分别编制几个程序完成,也可以在一个main()函数中完成  
,输出时,用明显的提示语,说明正在完成哪个任务。  
  
* 程序输出:输出10000以内的所有素数.输出10000以内的所有回文数.输出10000以内的所有回文素数  
  
* 问题分析:略  
* 算法设计:略   
*/
#include <iostream>  
#include<cmath>  
using namespace std;  
bool isPrimer(int n);  
bool isPalindrome(int n);  
  
int main()  
{  
 int i;  
 for(i=1;i<10000;++i){  
  if(isPalindrome(i)==true){  
   cout<<i<<"是回文数"<<"\t";  
 }  
  if(isPrimer(i)==true){  
  cout<<i<<"是素数"<<"\t";  
  }  
  if(isPalindrome(i)==isPrimer(i)){  
   cout<<i<<"是回文素数"<<"\t";  
  }  
 }  
 return 0;  
}  
  
bool isPrimer(int n)  
{  
 int i;  
for(i=2;i<=sqrt(n);++i)  
 {  
  if(n%i==0){  
   break;  
  }  
 }  
 if(i>sqrt(n)){  
  return true;  
 }  
   
}  
bool isPalindrome(int n)    
{  
 int m=n,f=0;  
 if(n>10){  
  for(;m>0;)  
  {  
   f=m%10+f*10;  
   m=m/10;  
  }  
  if(f==n){  
   return true;  
  }  
 }  
 else  
  return false;  
}


输出结果:


心得体会:还差的太远啊 该怎样做
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐