JavaScript

超轻量级php框架startmvc

js计算最大公约数和最小公倍数代码实例

更新时间:2020-09-12 03:12 作者:startmvc
一、计算最大公约数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);
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。