花开若相惜


私信TA

用户名:uq_78154707512

访问量:6382

签 名:

等  级
排  名 953
经  验 3305
参赛次数 0
文章发表 38
年  龄 22
在职情况 学生
学  校
专  业 通信工程

  自我简介:

刷题中!!!

TA的其他文章

解题思路:

欧几里得算法是用来求两个正整数最大公约数的算法,也称辗转相除法。古希腊数学家欧几里得在其著作《The Elements》中最早描述了这种算法,所以被命名为欧几里得算法。

扩展欧几里得算法可用于RSA加密等领域。

假如需要求 1997 和 615 两个正整数的最大公约数,用欧几里得算法,是这样进行的:

1997 / 615 = 3 (余 152)

615 / 152 = 4(余7)

152 / 7 = 21(余5)

7 / 5 = 1 (余2)

5 / 2 = 2 (余1)

2 / 1 = 2 (余0)

至此,最大公约数为1

以除数和余数反复做除法运算,当余数为 0 时,取当前算式除数为最大公约数,所以就得出了 1997 和 615 的最大公约数 1。



注意事项:

参考代码:

#include

int main()

{

    int a,b,n,z;

    scanf("%d%d", &a, &b);

       n=a*b;

   

    while(b!=0){

    z=a%b;

    a=b;

    b=z;

}

printf("%d%d",a,n/a);

    return 0;

}


 

0.0分

0 人评分

看不懂代码?想转换其他语言的代码? 或者想问其他问题? 试试问问AI编程助手,随时响应你的问题:

编程语言转换

万能编程问答  

代码解释器

代码纠错

SQL生成与解释

  评论区