C++第七次实验-素数和回文

/*     
一、问题及代码.   
 文件名称:0.exe   
* 作    者: 谢泽文    
* 完成日期:   2016   年    6 月 5 日    
* 版 本 号:v1.0    
* 对任务及求解方法的描述:  函数,循环
* 输入描述:    无
* 问题描述:素数和回文  
* 程序输出: 300以内的所有素数  300以内的所有回文数 300以内的所有回文素数 300以内的所有可逆素数
* 问题分析:函数的用法
* 算法设计:略
*/        
#include<iostream>    
using namespace std;    
int f(int n)     
{     
    int i;    
    for(i=2;i<n;i++)    
    {    
        if(n%i==0)    
            break;    
    }    
    if(i==n)    
        return 1;    
    else    
        return 0;    
}    
int g(int n)     
{    
    int x,a,b,c;    
    a=n%10;    
    b=(n/10)%10;   
    c=n/100;  
    if(n<10) x=n;  
    else if(n<100) x=a*10+b;  
    else x=a*100+b*10+c;  
    if(x==n)    
        return 1;    
    else    
        return 0;    
}     
int h(int n)    
{    
    int x,a,b,c;    
    a=n%10;    
    b=(n/10)%10;   
    c=n/100;  
    if(n<10) x=n;  
    else if(n<100) x=a*10+b;  
    else x=a*100+b*10+c;     
    return x;    
}    
void main()    
{    
    int n,i=0,j=0,p=0,q=0,k;    
    int a[300]={0},b[300]={0},c[300]={0},d[300]={0};    
    for(n=2;n<=300;n++)    
    {    
        if(f(n)==1)    
            a[i++]=n;    
        if(g(n)==1)    
            b[j++]=n;    
        if(g(n)==1&&f(n)==1)    
            c[p++]=n;    
       if(f(h(n))==1&&f(n))   
            d[q++]=n;    
    }    
    cout<<"300以内的所有素数为:";    
    for(k=0;k<i;k++)    
        cout<<a[k]<<" ";    
    cout<<endl;    
    cout<<"300以内的所有回文数为:";    
    for(k=0;k<j;k++)    
        cout<<b[k]<<" ";    
    cout<<endl;    
    cout<<"300以内的所有回文素数为:";    
    for(k=0;k<p;k++)    
        cout<<c[k]<<" ";    
    cout<<endl;    
    cout<<"300以内的所有可逆素数为:";    
    for(k=0;k<q;k++)    
        cout<<d[k]<<" ";    
    cout<<endl;     
}  

二,运行结果


三、心得体会:

注意函数的定义,返回值,参数

四、知识点总结:

注意返回值的使用


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值