辗转相除法-欧几里得算法

  • Post author:
  • Post category:其他


欧几里得算法也就是辗转相除法是用来求两个正整数最大公约数的算法。

定理:两个整数的最大公约数等于其中较小的那个数和两数相除余数的最大公约数。

#include<stdio.h>
int main()
{
	int m = 0;
	int n = 0;
	int r = 0;

	scanf("%d%d", &m, &n);  
	while (r = m % n)           //不用考虑谁大谁小谁模谁,都是一样的
	{
		m = n;
		n = r;

	}

	printf("%d"\n, n);
	return 0;
}



版权声明:本文为weixin_57628196原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。