最大公约数
题目描述
求两个正整数a 和 b的最大公约数。
要求使用c++ class编写程序。可以创建如下class
#include <iostream> using namespace std; class Integer { private: int _num; public: //构造函数 Integer(int num) { } //计算当前Integer 和 b之间的最大公约数 int gcd(Integer b) { } }; int main(){ int a, b; cin >> a >> b; Integer A(a); Integer B(b); cout << A.gcd(B) << endl; return 0; }
输入描述
两个正整数a,b,并且1=<a,b <=10000
输出描述
a和b的最大公约数
样例输入
1000 1000
样例输出
1000
#include <iostream> using namespace std; class Integer { private: int _num; public: //构造函数 Integer(int num):_num(num){ } //计算当前Integer 和 b之间的最大公约数 int gcd(Integer b) { int x1, x2, temp; x1 = _num; x2 = b._num; while (x2) { temp = x2; x2 = x1 % x2; x1 = temp; } return x1; } }; int main() { int a, b; cin >> a >> b; Integer A(a); Integer B(b); cout << A.gcd(B) << endl; return 0; }