求最大公约数

作者:追风剑情 发布于:2015-2-7 20:26 分类:Algorithms

早在公元前300年左右,欧几里得就在他的著作《几何原本》中给出了高效的解法——辗转相除法。

#include <stdlib.h>
#include <stdio.h>

//辗转相除法求最大公约数
int gcd(int m, int n)
{
	int r;
	r=m%n;
	if(r == 0)
		return n;
	else
		return gcd(n, r);
}

void main()
{
	int m,n;
	printf("请输入2个整数: ");
	scanf("%d,%d",&m,&n);
	printf("%d,%d的最大公约数为: %d \n", m, n, gcd(m, n));
	
	system("pause");
}

运行结果

gcd.png

标签: Algorithms

Powered by emlog  蜀ICP备18021003号-1   sitemap

川公网安备 51019002001593号