求一个计算两个数的公约数的C++代码

来源:百度知道 编辑:UC知道 时间:2024/06/05 12:54:59
{cout<<a<<"和"<<b<<"的最大公约数是"<<i<<endl;break;}
这句不能用

这下面给出一个求两数最小公约数的函数,求多个整数的最小公约数,只需递归或循环调用此函数即可。

#include <iostream>
using namespace std;
int get_mul(int a,int b){
int temp;
while(b){
temp=a%b;
a=b;
b=temp;
}
return a;
}

void main(){
int a1=96,a2=54;
cout<<"两数的最小公约数是:"<<get_mul(a1,a2)<<endl;
cout<<endl;
}

希望能帮到你。

用个for循环就行
a.b为输入值,c为a.b中最大值
for(i=c;i>0;i--)
{
if(a%i==0;b%i==0)
{cout<<a<<"和"<<b<<"的最大公约数是"<<i<<endl;break;}
}

#include<iostream>
int main()
{
int t,r,u,v;
cin>>u>>v;
if(v>u)
{t=u;u=v;v=t;}
while((r=u%v)!=0)
{u=v;
v=r;}
cout<<"最大公约数为"<<v<<endl;
return 0;
}