用于求最大公约数
普通写法:
#include <iostream>
using namespace std;
int main()
{
int m = 0, n = 0, r = 0;// 规定 m > n ,r为 m 除以 n 的余数
cin >> m >> n;
if(m < n)
{
swap(m, n);
}
r = m % n;
for (; n != 0; r = m%n, m = n, n = r)
{
;
}
cout << m;
}
递归写法:
int gcd(int m, int n)
{
if(n == 0)
{
return m;
}
else
{
return gcd(n, m % n);
}
}
int main ()
{
int m = 0, n = 0;
cin >> m >> n;
cout << gcd(m, n);
}