《C++程序设计 * 基础、编程抽象与算法策略》

Programming Abstractions in C++

[美] 埃里克S. 罗伯茨(Eric S. Roberts)著 李雁妮 译

最大公约数(Greatest Common Divisor, gcd)

即一个可以同时整除 x 和 y 的最大整数

希腊数学家 * 欧几里得 算法:

1、用 x 除以 y 并计算余数 r;

2、若 r 等于0,则算法结束,最大公约数为 y。

3、若 r 不等于0,则令 x 的值为 y ,y 的值为 r ,重复该过程。

代码:

  1 /*2  * File: gcd.cpp3  * _ _ _ _ _ _ _ 4  * Greatest Common Divisor5  */6 #include <iostream>7 8 int gcd(int x, int y);9 10 int main()11 {12         int n1, n2;13         std::cout<< "*** Greatest Common Divisor ***" <<std::endl;14         std::cout<< "Enter 1st number: ";15         std::cin>> n1;16         std::cout<< "Enter 2nd number: ";17         std::cin>> n2;18         std::cout<< "gcd of " << n1 << " and " << n2 << " is " << gcd(n1,n2) <<std::endl;19         return 0;20 }21 22 int gcd(int x, int y)23 {24         int r = x % y;25         while(r != 0)26         {27                 x = y;28                 y = r;29                 r = x % y;30         }31         return y;32 }

执行:

c++(最大公约数)相关推荐

  1. LeetCode简单题之找出数组的最大公约数

    题目 给你一个整数数组 nums ,返回数组中最大数和最小数的 最大公约数 . 两个数的 最大公约数 是能够被两个数整除的最大正整数. 示例 1: 输入:nums = [2,5,6,9,10] 输出: ...

  2. python最大公约数和最小公倍数的求法_最大公约数和最小公倍数的求法分析

    简介 求最大公约数和最小公倍数可能是编程中最常见的几个基本问题了.因为他们的基本概念基本上很早的时候就知道了,对他们的求法和他们之间的关系都比较有意思. 基本的数学性质 先从最大公约数这一部分开始吧. ...

  3. java编写最大公约数_Java编写最大公约数和最小公倍数

    package javaapplication24; class NegativeIntegerException extends Exception{ String message; public ...

  4. 【蓝桥java】进制与整除之最大公约数 最小公倍数

    补充: (1)欧几里得定理(辗转相除法):A和B的最大公约数 = B和A%B 的最大公约数 (2)将两个数乘起来再除以最大公约数就是最小公倍数 package cn.zzunit.jnvi;/***寻 ...

  5. Console-算法[if,while]-一输入两个正整数m和n,求其最大公约数和最小公倍数

    ylbtech-Arithmetic:Console-算法[if,while]-一输入两个正整数m和n,求其最大公约数和最小公倍数 1.A,Demo(案例) 输入两个正整数m和n,求其最大公约数和最小 ...

  6. 最大公约数和最小公倍数的欧几里得算法

    最大公约数的算法竟然如此简单,不说了,见代码 #include <stdio.h> int gcd(int a, int b) { if(b== 0) return a; return g ...

  7. 素数、最大公约数、最下公倍数、质因数分解

    2013-08-18 11:20:43 素数.最大公约数.最下公倍数.质因数分解都是与素数相关的,解决了素数的问题,其他的都可以此为基础求解. 小结: 求1到n之间的素数的基本方法是通过遍历2到sqr ...

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

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

  9. 【算法总结】数学问题-最大公约数和最小公倍数

    [算法总结]最大公约数和最小公倍数 一.最大公约数(GCD:greatest common divisor) 欧几里得算法: 若 a.b 全为零则它们的最大公约数不存在:若 a.b 其中之一为零,则它 ...

  10. ACMNO.22 C语言-公约公倍2 写两个函数,分别求两个整数的最大公约数和最小公倍数,用主函数调用这两个函数,并输出结果两个整数由键盘输入。 输入 两个数 输出 最大公约数 最小公倍数

    题目描述 写两个函数,分别求两个整数的最大公约数和最小公倍数, 用主函数调用这两个函数,并输出结果两个整数由键盘输入. 输入 两个数 输出 最大公约数 最小公倍数 样例输入 6 15 样例输出 3 3 ...

最新文章

  1. 【Linux网络编程】原始套接字编程
  2. android 自定义取色器,【Android自定义View】仿Photoshop取色器ColorPicker(二)
  3. 东南大学计算机学院方效林,方效林
  4. HDU.3652.B-number(数位DP)
  5. html360度视角观赏,360度全景图是如何生成的?
  6. java如何脱离ide运行_如何脱离IDE使用自己的jar包?
  7. MySQL数据库进阶(事务Transaction)
  8. 0基础自学前端好,还是报班培训好?
  9. Mybatis工作中常用动态SQL总结
  10. thinkpad T480安装WIN7系统NVM固态硬盘+INTEL HD620显卡
  11. 计算机rs485通讯,RS485与电脑通信
  12. 2018 CVPR之语义分割:CCNet: Criss-Cross Attention for Semantic Segmentation
  13. 【路由篇】01. 电脑远程访问小米路由器硬盘文件
  14. 使用N2N,实现异地快速组建内网
  15. Lenovo家用台式与一体机预装Win8改装Win7的解决方案
  16. Web漏洞-Xss跨站
  17. 【Java】使用lambda表达式获取list中所有对象的某个属性以及获取特定属性的某一个对象
  18. Sun工作站Solaris系统设置双屏显示
  19. 1.6 Scala代码风格
  20. 熬夜学Java语言-内部类种类解读

热门文章

  1. Java中环境变量的设置
  2. 数据库异常:无效的授权说明 [ 0x80040e4d ]
  3. JSP (一) ---[什么是JSP,JSP 与 Servlet 有什么区别]
  4. 服务器响应551,为什么输出fi上的ftp响应551错误
  5. bigint hive java类型_三十、Hive的数据类型以及常用的属性配置
  6. 2542 咖啡和作业 (简单二分)
  7. MTK平台ota升级后不删除u盘的update.zip
  8. Blender学习记录
  9. 模块一:cursors模块
  10. 关于鼠标右键的快捷键