题目描述
最大公因数,也称最大公约数、最大公因子,指两个或多个整数共有约数中最大的一个。给你两个数,请输出他们的最大公约数。
输入描述:
输入一行,包含两个正整数A,B 1 <= A,B <= 1e9 输出描述:
输出一行,包含一个正整数
代码
#include<iostream>
using namespace std;
int main(){
int m,n;
cin>>m>>n;
int r=m%n;
while(r!=0){
m=n;
n=r;
r=m%n;
}
cout<<n<<endl;
return 0;
}
这是一个用欧几里得算法求解最大公约数的程序。程序首先读取两个整数m和n,并计算它们的余数r,然后进入一个循环,直到余数r为0为止。在每一次循环中,将m的值赋给n,将n的值赋给r,重新计算余数r。最后输出的n即为m和n的最大公约数。