关闭

c++作业7

102人阅读 评论(0) 收藏 举报

项目1:素数和回文

#include <iostream>
using namespace std;
int isPrimer(int);//判断是否为素数
int isPalindrome(int);//判断是否为回文数
int opposite(int);//反向
int main()
{
    int i,r;
    cout<<"素数有:"<<endl;
    for(i=1;i<=300;i++)
    {
        if(isPrimer(i))
        {
            cout<<"\t"<<i;
        }
    }
    cout<<endl;
    cout<<"回文数有:"<<endl;
    for(i=1;i<=300;i++)
    {
        if(isPalindrome(i))
        {
            cout<<"\t"<<i;
        }
    }
    cout<<endl;
    cout<<"回文素数有:"<<endl;
    for(i=1;i<=300;i++)
    {
        if(isPrimer(i)&&isPalindrome(i))
        {
            cout<<"\t"<<i;
        }
    }
    cout<<endl;
    cout<<"可逆素数有:"<<endl;
    for(i=1;i<=300;i++)
    {
        if(isPrimer(i))
        {
            r=opposite(i);
            if(isPrimer(r))
            {
                cout<<"\t"<<i;
            }
        }
    }
    cout<<endl;
    return 0;
}
int opposite(int n)//反向
{
    int a[5];
    int i=0,j,r=0;
    while(n!=0)
    {
        a[i]=n%10;
        n=n/10;
        i++;
    }
    for(j=0;j<i;j++)
    {
        r=a[j]+r*10;
    }
    return r;
}
int isPrimer(int n)//素数
{
    int i,k=0;
    for(i=n-1;i>1;i--)
    {
        if(n%i==0)
            k++;
    }
    if(k>0)
        return 0;
    else
        return 1;
}
int isPalindrome(int n)//回文数
{
    int r;
    r=opposite(n);
    if(r==n)
        return 1;
    else
        return 0;
}


项目2:最大公约和和最小公倍数

#include <iostream>
using namespace std;
int fun(int,int,int*);
int main()
{
    int a,b,gcd,lcm;//最大公约数,最小公倍数
    cout<<"求两个正数的最大公约数和最小公倍数。"<<endl;
    cout<<"输入整数a:";
    cin>>a;
    cout<<"输入整数b:";
    cin>>b;
    lcm=fun(a,b,&gcd);
    cout<<"最大公约数:"<<gcd<<"\n最小公倍数:"<<lcm<<endl;
    return 0;
}
int fun(int m,int n,int *gcd)
{
    int a,b=m,c=n;
    if(b>=c)
    {a=b;b=c;c=a;}
    while(b)
    {
        a=b;b=c;c=a;
        b=b%c;
    }
    *gcd=c;
    a=m*n/c;
    return a;
}




0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:2330次
    • 积分:168
    • 等级:
    • 排名:千里之外
    • 原创:14篇
    • 转载:0篇
    • 译文:0篇
    • 评论:5条
    最新评论