今天学到了一个求最大公约数的方法,辗转相除法,又叫欧几里得算法。
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
int main()
{
int x = 0;
int y = 0;
int i = 0;
scanf("%d%d", &x, &y);
while (i = x % y)
//原本这里写的是x%y,跟下面的算式结合了一下,就又简便了些。
{
//i = x % y;就把这个代码省略了。
x = y;
y = i;
}
printf("%d\n", y);
return 0;
}
很有意思的一个算法,虽然我不明白原理,但是找了好多数计算,都没问题。
优秀的知识又增加了。