int zuixiaogongyueshu(int a, int b) {if (a % b == 0) {return b;}else {return zuixiaogongyueshu(b, a % b);}
}

使用递归调用函数求最大公约数

acmer建议背下模板

1.这个递归用的是辗转相处法

2.当a%b==0的时候,说明a和b已经相等,所以返回的值无论是a还是b都行。

3.当条件不满足的时候,则令b代替曾经的a,定a%b产生的余数代替曾经的b。这样的作用就是让大数除小数一直除下去。

4.有人会问,如果一开始b比a大怎么办?那么你看,如果b比a大,a%b会等于a,然后执行else,b就会替代原来的a位置,a%b也就是a就会替代原来b的位置。(这样会做到a与b互换位置)

这里再扩展一下最小公倍数:

求x,y的最小公倍数:

x,y的最小公倍数=(x*y)/(x,y的最大公约数)

使用递归法求最大公约数相关推荐

  1. PTA——递归法求最大公约数

    个人名片: 博主:酒徒ᝰ. 个人简介:沉醉在酒中,借着一股酒劲,去拼搏一个未来. 专栏:PTA习题及解析 介绍:记录了博主在pta学习练题的一些方法与笔记. 目录 前言 1.简介 2.优点 一.题目 ...

  2. 用递归法求最大公约数(递归)

    题目描述: 输入两个自然数a.b(a,b均在int范围内),用递归算法求a与b的最大公约数. 输入格式: 一行a与b,两数以一个空格隔开. 输出格式: 一个最大公约数. 样例输入: 20 15 样例输 ...

  3. 最小公倍数递归c语言,递归法求最大公约数和最小公倍数的实现代码

    #include using namespace std; int gcd(int a, int b);//声明最大公约数函数 int main() { int num1 = 1; int num2 ...

  4. 用递归法求两个数的最大公约数

    用递归法求两个数的最大公约数 求两个数的最大公约数的思路是,用辗转现除法 辗转相除法求两个数的最大公约数的步骤如下: 先用小的一个数除大的一个数,得第一个余数: 再用第一个余数除小的一个数,得第二个余 ...

  5. 用欧几里得算法求最大公约数_欧几里得算法:GCD(最大公约数),用C ++和Java示例解释...

    用欧几里得算法求最大公约数 For this topic you must know about Greatest Common Divisor (GCD) and the MOD operation ...

  6. c语言用质因数分解法求最大公约数,分解质因数法求最大公约数(javascrip实现)

    //判断是否为质数------------------------------------------------------ function isPrime(n) { for (var i = n ...

  7. 欧几里得算法求最大公约数python,算法:欧几里得求最大公约数(python版)

    #欧几里得求最大公约数 #!/usr/bin/env python #coding -*- utf:8 -*- #iteration def gcd(a,b): if b==0: return a e ...

  8. 欧几里得算法求最大公约数之惊掉下巴的代码简化(纯C语言)

    欧几里得算法求最大公约数也叫辗转相除法. 证明 有两个数a,b,且a = kb + r(a,b,k,r皆为正整数,且r<b) 假设d为a,b的一个公约数 而r = a - kb,两边同时除以d, ...

  9. 三目运算法求一个大值,以及指定位数的应用,以及函数的声明,以及函数的嵌套,以及函数的递归,以及用递归法求阶乘

    1.三目运算法 首先一般方法比较两个数的大小 用空格和回车都一样 当结果非x即y的时候 我们可以用三目运算法 z=x>y?x:y 如果表达式成立取前面的值,如果表达式不成立取后面的值 也可以改成 ...

最新文章

  1. C++虚继承和虚基类详解(一)
  2. 为什么说Java是2021年最值得学的技术?
  3. 基于python的聊天室_Python实现文字聊天室
  4. 百万用户规模的系统如何扩展
  5. UE4 蓝图RandomStreams
  6. Netbeans 适配C/C++、JAVA防坑秘笈
  7. Kubernetes Ingress解析
  8. Hping3 拒绝服务攻击手册
  9. Android 应用换肤功能(白天黑夜主题切换)
  10. [Luogu P3975] [TJOI2015]弦论
  11. 【CSS】常见选择器用法
  12. 互联网早报:腾讯推出“电子签平台” 用微信就能开出具备法律效力的电子收据
  13. 【论文学习】Towards Accurate Oriented Object Detection in Aerial Images with Adaptive Multi-level Feature
  14. 使用神经网络实现葡萄酒数据集的分类分析
  15. 《Google Android 开发入门与实战》
  16. 工程力学(10)—轴向拉伸与压缩二
  17. 空间站WiFi覆盖 高性价比无线路由方案的WiFi模块
  18. springboot幼儿园书刊信息管理系统毕业设计源码141858
  19. WINDOWS WINGRUB 硬盘安装centOS5.3安装笔记
  20. 软件需求规格说明书——学生成绩查询系统

热门文章

  1. nsis出错_NSIS Error错误解决办法
  2. GPS从入门到放弃(二十一) --- 地球自转参数
  3. http://wenku.baidu.com/link?url=aQUY1JswPwgulwBoaIt8GZAEjdUHhebtWmo7bqTQUJrO_fn16YWCoAtRTHhRQ8Bzx3qR
  4. 超详细的激光点云地面分割(可行驶区域提取)方案
  5. Golang sync.Mutex分析
  6. 勇创世界一流!移动云为我国数字经济发展提供有力支撑
  7. sqlserver之dbo
  8. 做自媒体月入一千的有超过百分之十吗?
  9. java createnewfile_Java 中File类的createNewFile()与createTempFile(), delete和deleteOnExit区别
  10. 网络术语:什么是带宽/吞吐量,时延,时延变化(抖动),丢包率