用递归法求最大公约数

原创 2013年12月05日 12:22:01

/*
 * Copyright (c) 2013, 烟台大学计算机学院
* All rights reserved.
* 作    者: 崔俊

* 完成日期:2013 年12月5日
* 版 本 号:v1.0
* 问题描述:分别用非递归函数和递归函数,用辗转相除法求两个正整数a和b的
            最大公约数,并体会迭代法和递归法在处理问题上各自的思路。
* 样例输入:
* 样例输出:
* 问题分析:
*/

//递归解法
#include "iostream"
using namespace std;
int gcd(int x, int y);
int main()
{
 int m,n;
 cout<<"输入两个数字:";
 cin>>m>>n;
 cout<<"最大公约数:";
 cout<<gcd(m,n)<<endl;
}


int gcd(int a, int b)
{
 int t,g;

 if (b==0)
  g=a;
 else
  g=gcd(b,a%b);
 return g;
}

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

第十三周项目4-递归法求两数最大公约数

/* *程序的版权和版本声明部分: *Copyright(c)2013,烟台大学计算机学院学生 ...

[算法]Java实现 求两个非负整数最大公约数 循环法 递归法

[算法]Java实现 求两个非负整数最大公约数 循环法 递归法代码功能:1.Java实现(完整源码附测试用例); 2.求解两个非负整数p,q(p>=q)的最大公约数; 3.循环法 以及 递归法两种...

迭代法求两数最大公约数(函数)

上机内容:C++程序的编写和运行 上机目的:掌握简单C++程序的编辑、编译、连接和运行的一般过程 我的程序:/* Copyright (c) 2013, 烟台大学计算机学院 * All ...

筛法求素数,欧几里得算法求最大公约数

这是我的第一篇技术博客,写的很浅,相信我会慢慢变强。 首先是欧几里得算法求最大公约数。 主要用到了辗转相除法,先用大的数除以小的数,得到余数,然后再用除数除以余数,再得余数……直到余数为0时,最后一步...

求最大公约数(欧几里得算法尾递归版)+N皇后算法(位运算版)

求最大公约数(欧几里得算法尾递归版)+N皇后算法(位运算版) 求最大公约数思路:沿用欧几里得算法直接出最简洁代码,数学证明重点在于gcd(a, b) =  gcd(b, amodb)上。 /* ...

递归法求巧克力块数

假设我们可以从自动售货机购买巧克力,一次1美元。每块巧克力都有一个优惠劵。我们可以从自动售货机中用7张优惠劵兑换一块巧克力。我们想知道一点:如果我们有n美元,那么一共能吃到多少块巧克力,包括用优惠劵兑...

【递归】求最大公约数(函数)

上机内容:C++程序的编写和运行 上机目的:掌握简单C++程序的编辑、编译、连接和运行的一般过程 我的程序:/* Copyright (c) 2013, 烟台大学计算机学院 * All righ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)