欧几里德算法:辗转求余

原创 2006年06月10日 09:37:00
/*欧几里德算法:辗转求余
  原理: gcd(a,b)=gcd(b,a mod b)
  当b为0时,两数的最大公因式即为a

  getchar()会接受前一个scanf的回车符
*/

#include<stdio.h>

void main()
{
    int temp;
    int a,b;
    scanf("%d",&a);
    scanf("%d",&b);
    printf("the greatest common factor of %d and %d is ",a,b);
    while(b!=0)
    {
        temp=b;
        b=a%b;
        a=temp;
    }
    printf("%d/n",a);
    getchar();
    getchar();
}
版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

趣味分数-辗转相除 (欧几里德算法) 递归算法 求最大公约数-java

问题描述: 求任意两个数的最大公约数。 public class Main { public static void main(String[]Args){ System.out.p...

两个数的最大公约数------欧几里德算法(辗转相除法)

计算原理依赖于下面的定理: 定理:gcd(a,b) = gcd(b,a mod b) (a>b 且a mod b 不为0) 算法步骤: 1:r = mod(a,b) 2:a = b; 3:b = r;...

数论 辗转相除法 扩展欧几里德算法 素数 快速幂

一.辗转相除法 int gcd(int a,int b) { if(b==0) return a; return gcd(b,a%b); }
  • wcc526
  • wcc526
  • 2013-11-03 20:00
  • 1574

状态转移思想解读:辗转相除(欧几里德)算法及扩展

欧几里德算法,也被称为辗转相除法,其被用于求解两个数之间的最大公约数,它的算法实现十分容易,但是其扩展算法的推导,并不那么显然。 相信你的第一感觉是十分简洁,确实也如此,对于一个不懂这两种算法的人,如...

辗转相除法Euclid(欧几里德)

基本算法——辗转相除法 问题:输出两个正整数a,b,且0输出其最大公约数p和最小公倍数q 解法1—— p从a开始,检测p是否能同时整除a和b, 是则停止循环,不是则令p减1,继续检测。 q从b...

数论基础 辗转相除 扩展欧几里德

数论基础 欧几里得 扩展欧几里得 模运算

扩展欧几里德算法的理解

  • 2012-09-07 21:33
  • 133KB
  • 下载

欧几里德算法求最大公约数

/* 辗转相除法, 又名欧几里德算法 设两数为a、b(a>b),求a和b最大公约数(a,b)的步骤如下: 用b除a,得a÷b=q......r1(0≤r1)。若r1=0,则(a,b)=b;若r1≠0...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

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