当前位置:  编程技术>c/c++/嵌入式

递归法求最大公约数和最小公倍数的实现代码

    来源: 互联网  发布时间:2014-10-13

    本文导语:         数学原理:       设有两个数num1和num2,假设num1比较大。令余数r = num1 % num2。       当r == 0时,即num1可以被num2整除,显然num2就是这两个数的最大公约数。       当r != 0时,令num1 = num2(除数变被除数),num...


       数学原理:

       设有两个数num1和num2,假设num1比较大。令余数r = num1 % num2。
       当r == 0时,即num1可以被num2整除,显然num2就是这两个数的最大公约数。
       当r != 0时,令num1 = num2(除数变被除数),num2 = r(余数变除数),再做 r = num1 % num2。递归,直到r == 0。
       以上数学原理可以用具体的两个数做一下分析,这样容易理解。

代码实现(求最大公约数):

代码如下:

#include
using namespace std;

int gcd(int a, int b);//声明最大公约数函数

int main()
{
    int num1 = 1;
    int num2 = 1;   
    cin >> num1 >> num2;
    while(num1 == 0 || num2 == 0)//判断是否有0值输入,若有则重新输入
    {
        cout num1 >> num2;
    }
    cout num2;
    }
    lcm = num1 / gcd(num1, num2) * num2;//先除后乘可以在一定程度上防止大数
    cout


    
 
 

您可能感兴趣的文章:

 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • php递归示例 php递归函数代码
  • php递归使用示例(php递归函数)
  • 使用C语言递归与非递归实现字符串反转函数char *reverse(char *str)的方法
  • 先序遍历二叉树的递归实现与非递归实现深入解析
  • 如何使用递归和非递归方式反转单向链表
  • php递归算法 php递归函数无限级分类
  • php+mysql不用递归实现的无限级分类实例(非递归)
  • C# 实现阶乘 (递归,非递归) 实现代码
  • 递归形式与非递归形式的斐波那契数列的用法分析
  • java 汉诺塔Hanoi递归、非递归(仿系统递归)和非递归规律 实现代码
  • 使用python实现递归版汉诺塔示例(汉诺塔递归算法)
  • C 二分查找 递归与非递归的实现代码
  • 归并排序的递归实现与非递归实现代码
  • php递归函数小例子
  • 请问java里可有递归吗?
  • PHP递归函数返回值使用实例
  • php递归创建目录小例子
  • php递归函数使用return问题
  • php递归函数求阶乘
  • 使用递归实现数组求和示例分享




  • 特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3