求四个数的最大公约数

时间:2022-10-30 11:09:53
/* 
* 程序的版权和版本声明部分 
* Copyright (c)2012, 烟台大学计算机学院学生 
* All rightsreserved. 
* 文件名称: fun.cpp 
* 作 者:赵 洋 
* 完成日期:2012 年11 月 15日 
* 版本号: v1.0 
* 对任务及求解方法的描述部分:运用函数的调用来解决四个数的最大公约数 
* 输入描述:四个正整数
* 问题描述:略 
* 程序输出:四个正整数的最大公约数 
*/  
#include<iostream>   
using namespace std;  
int gac(int x,int y);
int gcds(int x,int y,int z,int w);
int main ()
{
	int a,b,c,d,s;
	cout<<"请输入四个数:";
	cin>>a>>b>>c>>d;
    s=gcds (a,b,c,d);
	cout<<"最大公约数为:"<<s<<endl;
	return 0;
}
int gac(int x,int y)
{
	int i,j;
	if (x<y)
	{
		j=y;
		y=x;
		x=j;
	}
	for (i=y;i>=1;--i)
		if (x%i==0&&y%i==0)
			return i;
}

int gcds(int x,int y,int z,int w)
{
	int num;
	num=gac(gac(x,y),gac(z,w));
	return num;
}


运行结果:

求四个数的最大公约数