辗转相除法求最大公约数,非goto
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相关推荐
- python辗转相除法求最大公约数最小公倍数_辗转相除法求最大公约数/最小公倍数...
http://blog.csdn.net/jtujtujtu/article/details/4407171 2009 辗转相除法求最大公约数: 辗转相除法, 又名欧几里德算法(Euclidean a ...
- 利用辗转相除法——求最大公约数(详解)
辗转相除法 求最大公约数: 给定两个数,求这两个数的最大公约数 欧几里得算法又称辗转相除法,是指用于计算两个非负整数a,b的最大公约数.应用领域有数学和计算机两个方面.计算公式gcd(a,b) = g ...
- 多项式辗转相除法求最大公约数_辗转相除法求最大公约数
辗转相除法求最大公约数 约数 如果数 a 能被数 b 整除,a 就叫做 b 的倍数,b 就叫做 a 的约数. 最大公约数 最大公约数就是两个数中,大家都能相约且最大的数. 辗转相除法 辗转相除法又名欧 ...
- 辗转相除法求最大公约数原理分析(附代码实现)
辗转相除法求最大公约数原理分析(附代码实现) 前言 解释 原理分析 代码 结语 前言 辗转相除法用起来很简单,但是其原理却自己想不明白.于是乎看了几篇有关辗转相除法原理的分析,在这里自己写下自己的理解 ...
- c语言辗转相除法约分分数,更相损减法和辗转相除法 求最大公约数和最小公倍数(C语言)...
假设有两个数a和b,求a,b的最大公约数和最小公倍数实际上是一个问题,得出这两个数的最大公约数就可以算出它们的最小公倍数. 最小公倍数的公式是 a*b/m m为最大公约数 因为 a=m*i; b=m* ...
- leetcode----1447.最简分数(辗转相除法求最大公约数)
1447.最简分数 问题:给你一个整数 n ,请你返回所有 0 到 1 之间(不包括 0 和 1)满足分母小于等于 n 的 最简 分数 .分数可以以 任意 顺序返回. 示例: 输入:n = 2 输出: ...
- P30-P32:逻辑类型,保留小数的输出,辗转相除法求最大公约数
** P30-P32(逻辑类型,保留小数的输出,辗转相除法求最大公约数): ** boolean 代码作用如同上述代码中的isPrime,会用到boolean,将isPrime的int类型改为逻辑类型 ...
- 辗转相除法求最大公约数(Python)
辗转相除法求最大公约数(Python) #辗转相除法 #1大数除以小数得到余数 #2用余数除以1中的除数得到余数 #3重复2直到余数等于0返回除数即为两数的最大公约数 def eucAlg(a,b): ...
- 分别求两个整数的最大公约数和最小公倍数。_看不懂辗转相除法求最小公约数?以身相许那种哦!...
给你打个比喻吧:你英雄救美了,美女想要报答你,你想要1000块感谢费,但是美女却想要以身相许 ,懂了吧,同样都是报答,只是用了不一样的方式,辗转相除法也是这样,你两个数的最大公约数不容易求,我就用另外 ...
最新文章
- 【hihocoder】三十九周:二分.归并排序之逆序对
- 2017中国大学生程序设计竞赛-哈尔滨站(2/13)
- TypeScript入门知识五(面向对象特性二)
- CodeFirst实体类中,为什么都把ICollectionx定义成virtual?
- 牛客竞赛,GDDU第十届文远知行杯新生程序设计竞赛,摸鱼记(BDEIKL题解,补G,ACFHJ)
- 用remastersys备份LINUX,注意备份盘的空间占用
- 谈论豆瓣网捧着金饭碗要饭
- 【雷达信号处理】---模糊函数与仿真
- deficit记忆_英语单词分类记忆 高效快速的记忆法
- 八、管道弯头中流体混合流动与传热
- linux 防火墙 端口号命令
- ECAM6--变量与函数
- Gibbs Sampling\吉布斯采样(一)
- 集合转换成数组的两种方法---toArray()和toArray(T[] a)
- 系统关键文件丢失或损坏
- 优化距离计算函数的matlab实现
- 聊聊 Ubuntu 18.04 静态IP设置
- 一套完整的动环监控系统,适用于各类机房、学校机房、医院机房、银行库房等
- MOOC战德臣数据库课程自用笔记_8_属性闭包计算方法
- 网络安全等级保护2.0测评最新流程
热门文章
- 张雨生林志炫高音对比
- (筆記) 如何使用Visual C++ 6.0開發Win32 DLL? (C/C++) (VC++)
- linux普通用户home目录锁定
- DiscuzX 论坛首页 和 分 区设置版块横排
- WPF拖放功能实现zz
- Exchange2007 中Send as 与Send on behalf of 讲解
- 【Java VisualVM】使用 VisualVM 进行性能分析及调优
- IndexedDB 索引数据库
- Integer 和 int的种种比较
- Java 7并发编程实战手册