辗转相除法求最大公因数

Posted 超浪*牛

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了辗转相除法求最大公因数相关的知识,希望对你有一定的参考价值。

辗转相除法求最大公因数

  • 它的具体做法是:用较小数除较大数,再用出现的余数(第一余数)去除除数,再用出现的余数(第二余数)去除第一余数,如此反复,直到最后余数是0为止。
#include <stdio.h>
#include <stdlib.h>
int fun(int a,int b){
	int c,r = a%b;//不用考虑这个大小,先后关系 ,自己调试就行 
	while(r!=0){
		a = b;
		b = r;
		r = a%b;	
	}
	return b;	
} 
int main() {
	int a,b;
	scanf("%d%d",&a,&b); 
	printf("最大公因数是:%d",fun(a,b));
	//最小公倍数:只要用这两个数的乘积除以最大公因数即可
	// printf("最小公倍数是:%d",(a*b)/fun(a,b));
	return 0;
}

以上是关于辗转相除法求最大公因数的主要内容,如果未能解决你的问题,请参考以下文章

『数论』求最大公因数

辗转相除法求最大公因数

求最大公因数(辗转相除,更相止损)C++描述

求最大公因数(辗转相除,更相止损)C++描述

求最大公因数(辗转相除,更相止损)C++描述

谁来解释一下用辗转相除法求最两个数的最大公约数原理