首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 其他教程 > 其他相关 >

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

2012-11-23 
输出10000以内的素数、回文数、回文素数/** Copyright (c) 2011, 烟台大学计算机学院* All rights reserved.

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

/*   * 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;  }     


输出结果:输出10000之内的素数、回文数、回文素数

心得体会:还差的太远啊 该怎样做

热点排行