最大公约数---- C++

来源:互联网 发布:1920淘宝全屏轮播海报 编辑:程序博客网 时间:2024/06/05 17:58

方法一:

求两数的最大公约数,可采用欧几里得方法:只要两数不相等,就反复用大数减小数,
直到相等为止,此相等的数就是两数的最大公约数。

#include <fstream>#include <iostream>#include <vector>using namespace std;int gys(int,int);  //声明函数int main(int argc, char* argv[]){    int x,y;    cin>>x,y;    cout<<gys(x,y)<<endl;  //调用函数    return 0;}int gys(int x,int y)  //定义函数{    while(x!=y)    {        if(x>y)        {            x=x-y;        }        else        {            y=y-x;        }    }    return x;}

方法二:
辗转相除法。

#include <fstream>#include <iostream>#include <vector>using namespace std;int gys(int,int);  //声明函数int main(int argc, char* argv[]){    int x,y;    cin>>x,y;    cout<<gys(x,y)<<endl;  //调用函数    return 0;}int gys(int x,int y)  //定义函数{    int m,n,p;    if(x>y)    {        m=x;        n=y;    }    else    {        m=y;        n=x;    }    p=n;        //定义余数的初值,为较小的数    while(p!=0)    {        p=m%n;   //取余数        m=n;//变量值迭代        n=p;//更新余数    }    return m;}

辗转相除法的算理是根据:在a=bq+r,中,除数b和余数r能被同一个数整除,那么被除数a也能被这个数整除。或者说,除数与余数的最大公约数,就是被除数与除数的最大公约数;如果反过来说,被除数与除数的最大公约数,就是除数与余数的最大公约数。
如果用辗转相除法求两个数的最大公约数时,最后的余数是1,那么这两个数就是互质数,或者说,它们只有公约数1

多个数的最大公约数:

#include <iostream>#include <vector>using namespace std;int main(){    int a,b,c;    while(cin>>a>>b>>c)    {   int out;        int tmp=a;        if(tmp>b) tmp=b;        if(tmp>c) tmp=c;        for(int i=1; i<=tmp; i++)        {            if(a%i==0&&b%i==0&&c%i==0){                out=i;            }        }        cout<<out<<endl;    }}

ps:本帖仅新手可见,其余人员自行回避。

1 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 便利店开业营业额低怎么办 现在etc超时了怎么办? 中国银行e贷逾期怎么办 招商银行e分期逾期怎么办 保单贷款还不了怎么办 离婚时按揭房怎么办 按揭房子不要了怎么办? 征信有问题怎么办房贷 夫妻一方不做房贷共还人怎么办 给你花逾期一年怎么办 文件夹密码忘记了怎么办 网址被qq拦截怎么办 手机qq邮箱中毒怎么办 邮箱附件带病毒怎么办? 打开了病毒附件怎么办? qq邮箱被拦截怎么办 邮件地址已被注册怎么办 信用卡欠款怎么办房贷 贷款还不起了怎么办 装修贷款无抵押怎么办 黑户买房做贷款怎么办 易分期无法还款怎么办 工行晚还款一天怎么办 手机银行网页打不开怎么办 顺丰分拣错误怎么办 超市生意越来越差怎么办 收到逾期催收函怎么办 手机贷逾期了怎么办 临额到期还不上怎么办 信用卡不想用了怎么办 授信时间到了怎么办 餐饮吃到苍蝇怎么办 商户二级处罚了怎么办 立刷蓝牙连不上怎么办 传奇3骑不了怎么办 房子说话有回音怎么办 老师声音哑了怎么办 人流后还有残留怎么办 人流后有残留物怎么办 模拟人生3外星人怎么办 模拟人生爸妈死孩子怎么办?