C++第7次作业

来源:互联网 发布:php addslashes和gpc 编辑:程序博客网 时间:2024/06/07 12:43

项目1:素数和回文

#include<iostream>using namespace std;int isPrimer(int n)//判断素数{    int i,j=1;    for(i=2;i<n;i++)        if(n%i==0)        {            j=0;            break;        }        return j;}int isPalindrome(int num) //判断回文{    int temp=0;    for(int n=num;n;n/=10)        temp=temp*10+n%10;    return temp==num;}int main(){    const int M=100;    int i,j=0,m=0,n=0,k=0,p,r;    int a[M],b[M],c[M],d[M];    for(i=2;i<=300;i++)    {        if(isPrimer(i))        {            a[j]=i;            j++;            r=i;            p=0;            while(r!=0)            {                p=p*10+r%10;                r=r/10;            }            if(isPrimer(p))            {                d[k]=i;                k++;            }        }        if(isPalindrome(i))        {            b[m]=i;            m++;        }        if(isPrimer(i) && isPalindrome(i))        {            c[n]=i;            n++;        }    }    cout<<"300以内的所有素数有:"<<endl;    for(i=0;i<j;i++)        cout<<a[i]<<"\t ";    cout<<endl;    cout<<"300以内的所有回文数有:"<<endl;    for(i=0;i<m;i++)        cout<<b[i]<<"\t";    cout<<endl;    cout<<"300以内的所有回文素数有:"<<endl;    for(i=0;i<n;i++)        cout<<c[i]<<"\t";    cout<<endl;    cout<<"300以内的所有可逆素数有:"<<endl;    for(i=0;i<k;i++)        cout<<d[i]<<"\t";    cout<<endl;    return 0;}


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

#include <iostream>using namespace std;int F1(int m,int n){    int i;    while(n!=0)    {        i=m%n;        m=n;        n=i;    }    return m;}int F2(int m,int n){    int j;    j=(m*n)/(F1(m,n));    return j;}int main(){    int a,b;    cin>>a>>b;    cout<<"请输入两个数:";    cout<<"最大公约数是:"<<F1(a,b)<<endl;    cout<<"最小公倍数是:"<<F2(a,b)<<endl;    return 0;}


0 0
原创粉丝点击