使用了三种算法(辗转相除法、辗转相减法、穷举法)
程序的算法部分使用了递归,这样程序会看起来更简练一些。
在使用递归的时候也遇到了一些问题,不过好在已经都解决了。
代码如下:
//创建时间:2017年3月18日
//主要功能:用辗转相除法、辗转相减法、穷举法求两个整数的最大公约数
#include "stdafx.h"
#include "iostream"
using namespace std;
int a, b;//存输入的两个整数
//辗转相除法
int GCD1(int x, int y)
{
if (x%y == 0)
cout << "最大公约数为:" << y << endl;
else
return GCD1(y, x%y);//递归
}
//辗转相减法
int GCD2(int x, int<