首页 > 编程语言 > 详细

欧几里得算法 JavaScript

时间:2021-05-20 23:09:37      阅读:53      评论:0      收藏:0      [点我收藏+]
题目来源:计算机程序设计艺术
欧几里得算法又称辗转相除法,是指用于计算两个非负整数a,b的最大公约数
 
技术分享图片

算法E: 给定两个正整数m和n,求它们的最大公约数(能同时整除m和n的最大正整数)

E1. 【求余数】以n除m并令r为所得余数。(我们将有0≤r<n)

E2. 【余数为零?】若 r = 0, 算法结束, n即为答案

E3. 【减少】 置m<-n,  n<-r, 并返回步骤E1

 

 

技术分享图片
//欧几里得算法又称辗转相除法,是指用于计算两个非负整数a,b的最大公约数
//544和119的最大公约数17
var m = prompt("请输入第一个值");
var n = prompt("请输入第二个值");
var r = 0;
r = calc_maxnum(m, n);
window.alert(m + ‘和‘ + n + ‘的最大公因子:‘ + r);

function calc_maxnum(num1, num2) {
    var result = num1 % num2;
    if (result > 0) {
        return calc_maxnum(num2, result);
    }
    return num2;
}
View Code

 

欧几里得算法 JavaScript

原文:https://www.cnblogs.com/keyuming/p/14791115.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!