壬戌日__求两个数最大公约数
2018-03-31 10:59
162 查看
求两个数的最大公约数(三种方法)
#include<stdio.h> #include<Windows.h> #pragma warning(disable:4996) void common_measure(int x,int y) { //方法1 //int min = x > y ? y : x;//最大公约数<=较小数 //for (; min > 0; min--) //{ // if (0 == x%min && y%min == 0) // { // break; // } //} //printf("%d\n", min); //方法2 辗转相减法 //while (1) //{ // if (x > y) // { // x -= y;//(eg:x,y,公约数T:x=nT;y=mT;(ifx>y) x-y==(n-m)T;x-=y:缩小T的个数直至'a'=='b'==T即找到最大公约数 // } // else if (x<y) // { // y -= x; // } // else // { // break; // } //} //printf("%d\n", x); //方法3 辗转相除法 while (x*y!=0)//此处条件是为了判断下面循环体中x,y(x,y中内容为余数),如有一个为零说明可以整除,即找到最大公约数 { if (x > y) { x %= y; } else { y %= x; } } int d = x == 0 ? y : x; printf("%d\n",d); } int main() { int x, y; while (1) { printf("请输入两个数\n"); scanf("%d%d", &x, &y); common_measure(x, y); } system("pause"); return 0; }
相关文章推荐
- 第十二周项目3--求两个数的最大公约数
- 第十二周 项目三-用递归方法求解-(3)用递归函数求两个数的最大公约数
- hdu 4630 查询[L,R]区间内任意两个数的最大公约数
- 1.求两个数的最大公约数
- 求两个数的最大公约数
- 两个数最大公约数几种算法
- 求两个数的最大公约数
- 用递归算法求两个数的最大公约数
- C++ 技术支持课-求两个数最大公约数和最小公倍数
- 用三种方法(辗转相除法,相减法,穷举法)求两个数的最大公约数,仅供参考。
- 求两个数的最大公约数
- 求输入两个数的最大公约数——C语言(求完善)
- 求两个数的最大公约数——辗转相除法
- 辗转相除法求两个数的最大公约数
- 计算两个数的最大公约数 gcd(a,b)
- 第11周项目 求两个数的最大公约数
- 求两个数的最大公约数
- 求两个数的最大公约数
- 作业题,编写两个类:A和B,A创建的对象可以计算两个正整数的最大公约数,B创建的对象可以计算两个数的最小公倍数,要求:B类中有一个成员变量是A类声明的对象
- 两个数的最大公约数