1 #include<iostream>
 2 using namespace std;
 3 //不推荐用goto,当然用它更快
 4 //辗转相除法求两数的最大公约数
 5 int gcd(long int a,long int b){
 6     int x=a<b?a:b;
 7     //获得较小者,用来做循环的约束值
 8
 9     for(int i=0;i<x;x++){
10         //循环
11       if(a>b){
12           int r=a%b;//取余数
13           if(r==0){//能否整除判断
14              return b;//可以便输出
15           }else{//否则进行下一轮的算法
16               a=b,b=r;
17           }
18       }else if(a<b){//下面一样
19           int r=b%a;
20           if(r==0){
21               return a;
22           }else{
23               b=a,a=r;
24           }
25       }else{//两数相等的,直接输出其中一个
26           return a;
27       }
28    }
29 }
30
31 int main(){
32     int y=0;y=gcd(156,176);
33     cout<<"156和176的最大公约数是:"<<y;
34
35     return 0;
36 }

原理: 欧几里得,辗转相除法, a 和 b 的最大公约数,等于 a除b 后的余数和b的最大公约数。 a 除 b 余 c,b 和 c 的最大公约就是 a 和 b 的

辗转相除法求最大公约数,非goto相关推荐

  1. python辗转相除法求最大公约数最小公倍数_辗转相除法求最大公约数/最小公倍数...

    http://blog.csdn.net/jtujtujtu/article/details/4407171 2009 辗转相除法求最大公约数: 辗转相除法, 又名欧几里德算法(Euclidean a ...

  2. 利用辗转相除法——求最大公约数(详解)

    辗转相除法 求最大公约数: 给定两个数,求这两个数的最大公约数 欧几里得算法又称辗转相除法,是指用于计算两个非负整数a,b的最大公约数.应用领域有数学和计算机两个方面.计算公式gcd(a,b) = g ...

  3. 多项式辗转相除法求最大公约数_辗转相除法求最大公约数

    辗转相除法求最大公约数 约数 如果数 a 能被数 b 整除,a 就叫做 b 的倍数,b 就叫做 a 的约数. 最大公约数 最大公约数就是两个数中,大家都能相约且最大的数. 辗转相除法 辗转相除法又名欧 ...

  4. 辗转相除法求最大公约数原理分析(附代码实现)

    辗转相除法求最大公约数原理分析(附代码实现) 前言 解释 原理分析 代码 结语 前言 辗转相除法用起来很简单,但是其原理却自己想不明白.于是乎看了几篇有关辗转相除法原理的分析,在这里自己写下自己的理解 ...

  5. c语言辗转相除法约分分数,更相损减法和辗转相除法 求最大公约数和最小公倍数(C语言)...

    假设有两个数a和b,求a,b的最大公约数和最小公倍数实际上是一个问题,得出这两个数的最大公约数就可以算出它们的最小公倍数. 最小公倍数的公式是 a*b/m m为最大公约数 因为 a=m*i; b=m* ...

  6. leetcode----1447.最简分数(辗转相除法求最大公约数)

    1447.最简分数 问题:给你一个整数 n ,请你返回所有 0 到 1 之间(不包括 0 和 1)满足分母小于等于 n 的 最简 分数 .分数可以以 任意 顺序返回. 示例: 输入:n = 2 输出: ...

  7. P30-P32:逻辑类型,保留小数的输出,辗转相除法求最大公约数

    ** P30-P32(逻辑类型,保留小数的输出,辗转相除法求最大公约数): ** boolean 代码作用如同上述代码中的isPrime,会用到boolean,将isPrime的int类型改为逻辑类型 ...

  8. 辗转相除法求最大公约数(Python)

    辗转相除法求最大公约数(Python) #辗转相除法 #1大数除以小数得到余数 #2用余数除以1中的除数得到余数 #3重复2直到余数等于0返回除数即为两数的最大公约数 def eucAlg(a,b): ...

  9. 分别求两个整数的最大公约数和最小公倍数。_看不懂辗转相除法求最小公约数?以身相许那种哦!...

    给你打个比喻吧:你英雄救美了,美女想要报答你,你想要1000块感谢费,但是美女却想要以身相许 ,懂了吧,同样都是报答,只是用了不一样的方式,辗转相除法也是这样,你两个数的最大公约数不容易求,我就用另外 ...

最新文章

  1. 【hihocoder】三十九周:二分.归并排序之逆序对
  2. 2017中国大学生程序设计竞赛-哈尔滨站(2/13)
  3. TypeScript入门知识五(面向对象特性二)
  4. CodeFirst实体类中,为什么都把ICollectionx定义成virtual?
  5. 牛客竞赛,GDDU第十届文远知行杯新生程序设计竞赛,摸鱼记(BDEIKL题解,补G,ACFHJ)
  6. 用remastersys备份LINUX,注意备份盘的空间占用
  7. 谈论豆瓣网捧着金饭碗要饭
  8. 【雷达信号处理】---模糊函数与仿真
  9. deficit记忆_英语单词分类记忆 高效快速的记忆法
  10. 八、管道弯头中流体混合流动与传热
  11. linux 防火墙 端口号命令
  12. ECAM6--变量与函数
  13. Gibbs Sampling\吉布斯采样(一)
  14. 集合转换成数组的两种方法---toArray()和toArray(T[] a)
  15. 系统关键文件丢失或损坏
  16. 优化距离计算函数的matlab实现
  17. 聊聊 Ubuntu 18.04 静态IP设置
  18. 一套完整的动环监控系统,适用于各类机房、学校机房、医院机房、银行库房等
  19. MOOC战德臣数据库课程自用笔记_8_属性闭包计算方法
  20. 网络安全等级保护2.0测评最新流程

热门文章

  1. 张雨生林志炫高音对比
  2. (筆記) 如何使用Visual C++ 6.0開發Win32 DLL? (C/C++) (VC++)
  3. linux普通用户home目录锁定
  4. DiscuzX 论坛首页 和 分 区设置版块横排
  5. WPF拖放功能实现zz
  6. Exchange2007 中Send as 与Send on behalf of 讲解
  7. 【Java VisualVM】使用 VisualVM 进行性能分析及调优
  8. IndexedDB 索引数据库
  9. Integer 和 int的种种比较
  10. Java 7并发编程实战手册