C++第7次作业

时间:2022-07-31 21:55:55

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

#include <iostream>

using namespace std;

int x,y,m,n;
int yue(int a,int b)
{
    int c,t;
    if(a<b)
    {
        t=a;
        a=b;
        b=t;
    }
    c=a%b;
    while(c!=0)
    {
        a=b;
        b=c;
        c=a%b;
    }
    m=b;
    return b;
}
int bei(int x,int y)
{
    int r;
    r=x*y/yue(x,y);
    n=r;
    return 0;
}
int main()
{
    cout<<"请输入两个整数:";
    cin>>x>>y;
    yue(x,y);
    bei(x,y);
    cout<<"最大公约数是:"<<m<<endl;
    cout<<"最小公倍数是:"<<n<<endl;
    return 0;
}

项目四-数组素数排序

#include <iostream>
using namespace std;
void sort(int a[], int n)  //数组排序
{
    int i,j,temp;
    for(i=0;i<n-1;i++)
        for(j=0;j<n-i-1;j++)
        if(a[j]>a[j+1])
        {
            temp=a[j];
            a[j]=a[j+1];
            a[j+1]=temp;
        }
}
bool prime(int x)   //素数判断
 {
    int i;
    for(i=2;i<x;i++)
    {
        if(x%i==0)
        return false;
    }
        return true;
}
void print(int p[],int n)//输出数组
{
    int i;
    for(i=0;i<n;i++)
        cout<<p[i]<<" ";
        cout<<endl;
}
int main( )
{   int a[10]={2,13,5,47,19,53,27,23,28,11};
    int b[10],i,j=0;
    for(i=0;i<10;i++)
    {

      if(prime(a[i])==true)//将a中的素数存入b数组
      {
      b[j]=a[i];
      j++;
      }
    }
   print(b,j);//输出排序前的b数组
    sort(b,j);   //对数组b排序
    print(b,j);  //输出排序后的b数组
    return 0;
}