/*
* 程序的版权和版本声明部分:
* Copyright (c) 2013.烟台大学计算机学院。
* All rights reserved.
* 文件名称:求四个数的最大公约数.cpp
* 作 者:张凯
* 完成日期:2013 年 11月 6 日
* 版 本 号:v1.0
* 对任务及求解方法的描述部分:
* 输入描述:略
* 问题描述:输入四个数,并求出其最大公约数
* 程序输出:略
* 问题分析:求两个数的最大公约数的方法为辗转相除法,用函数具体实现。
* 首先将四个数分成两组,分别求前两个数的最大公约数m1和后两个数的最大公约数m2,将得到的两个数m1和m2再最大公约数。
* 算法设计:略
*/
#include <iostream>
using namespace std;
int gcd(int x1, int x2);
int gcds(int num1,int num2,int num3,int num4);
int main()
{
int num1,num2,num3,num4;
cout<<"请任意输入四个整数:"<<endl;
cin>>num1>>num2>>num3>>num4;
cout<<"这四个整数的最大公约数是:"<<endl;
cout<<gcds(num1,num2,num3,num4)<<endl;
return 0;
}
int gcd(int x1,int x2)
{
int n,t;
if(x1<x2)
{
n=x1;
x1=x2;
x2=n;
}
while(x2>0)
{
t=(x1)%(x2);
x1