c++--作业7

1,求最大公约数和最小公倍数

#include<iostream.h>  
int b;                                                       //最小公倍数  
int fun(int m,int n,int x)                                     //计算函数  
{  
    int k;  
    k=m%n;  
    while(k)                                                   //求最大公约数  
    {  
        m=n;  
        n=k;  
        k=m%n;  
    }  
    b=x/n;                                                   //最小公倍数=两数之积/最大公约数  
    return n;                                                  //返回最大公约数  
}  
void main()  
{  
    int m,n,y;  
    cout<<"请输入两个整数:";  
    cin>>m>>n;  
    y=fun(m,n,m*n);                                          //取最大公约数  
    cout<<"最大公约数是"<<y<<",最小公倍数是"<<b<<endl;  
}  

2,数组素数排序

#include<iostream>  
using namespace std;  
int f(int x)  
{  
   int i,a=0;  
   for(i=2;i<x;i++)  
    {if(x%i==0) break;}  
if(i==x) {a=1; return a;}  
}  
void y(int p[], int n)  
{  
    int i,j,temp;  
    for(i=0;i<n-1;i++)  
        for(j=0;j<n-1-i;j++)  
        if(p[j]>p[j+1])  
    {  
        temp=p[j];  
        p[j]=p[j+1];  
        p[1+j]=temp;  
    }  
}  
int main()  
 {  
   int a[10]={2,13,5,47,19,53,27,23,28,11},b[10],k,q=0,i,g;  
   for(k=0;k<10;k++)  
   {  
       if(f(a[k])==1)  
       {  
           b[q]=a[k];  
           q++;  
       }  
   }  
   for(i=0;i<q;i++)  
    cout<<b[i]<<" ";  
    cout<<endl<<"b数列为:";  
    y(b,q);  
     for(i=0;i<q;i++)  
    cout<<b[i]<<" ";  
 }  



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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值