如何用JavaScript编写函数计算任意两个数的最大公约数和最小公倍数?
- 内容介绍
- 文章标签
- 相关推荐
本文共计341个文字,预计阅读时间需要2分钟。
一、计算最大公约数+1小学时一般采用辗转相除法,通过短除得到结果。下面用一种最基本的方法求最大公约数+1。
javascriptfunction gcd2(a, b) { var result=1; for (var i=1; i <=a + b; i++) { if (a % i===0 && b % i===0) { result=i; } } return result + 1;}
一、计算最大公约数
1、小学时候一般采用质因数分解法,一般使用短除得到结果,下面用一种最初级的方法求最大公约数
function gcd2(a,b){ var result = 1; for(var i = 1; i <= a && i <= b; i++ ){ if(a%i == 0 && b%i == 0 ){ result = i; } } return result; }
2、使用欧里几德算法,辗转相除法。具体原理自行百度。下面给出两种代码算法
递归
function gcd(a,b){ if(b == 0){ return a; } var r = a % b; console.log(r); return gcd(b,r); }
迭代
function GCD(a,b){ var temp; while(b != 0){ temp = a % b; a = b; b = temp; } return a; }
二、最小公倍数,最小公倍数的算法,是两个数的乘积除以最大公倍数
function scm(a,b){ return (a*b)/gcd(a,b); }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持易盾网络。
本文共计341个文字,预计阅读时间需要2分钟。
一、计算最大公约数+1小学时一般采用辗转相除法,通过短除得到结果。下面用一种最基本的方法求最大公约数+1。
javascriptfunction gcd2(a, b) { var result=1; for (var i=1; i <=a + b; i++) { if (a % i===0 && b % i===0) { result=i; } } return result + 1;}
一、计算最大公约数
1、小学时候一般采用质因数分解法,一般使用短除得到结果,下面用一种最初级的方法求最大公约数
function gcd2(a,b){ var result = 1; for(var i = 1; i <= a && i <= b; i++ ){ if(a%i == 0 && b%i == 0 ){ result = i; } } return result; }
2、使用欧里几德算法,辗转相除法。具体原理自行百度。下面给出两种代码算法
递归
function gcd(a,b){ if(b == 0){ return a; } var r = a % b; console.log(r); return gcd(b,r); }
迭代
function GCD(a,b){ var temp; while(b != 0){ temp = a % b; a = b; b = temp; } return a; }
二、最小公倍数,最小公倍数的算法,是两个数的乘积除以最大公倍数
function scm(a,b){ return (a*b)/gcd(a,b); }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持易盾网络。

