本文小编为大家详细介绍“javascript如何求两个数的最大公约数”,内容详细,步骤清晰,细节处理妥当,希望这篇“JavaScript如何求两个数的最大公约数”文章能帮助大家解决疑惑,下面跟着小编的思路慢
本文小编为大家详细介绍“javascript如何求两个数的最大公约数”,内容详细,步骤清晰,细节处理妥当,希望这篇“JavaScript如何求两个数的最大公约数”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。
在JavaScript中,可利用function语句、if语句配合“%”、“===”运算符求两个数的最大公约数,语法为“function GCd(x,y){if(x%y===0){return y;}return gcd(y,x%y)}”。
本教程操作环境:windows10系统、javascript1.8.5版、Dell G3电脑。
在JavaScript中,求两个数的最大公约数,
示例如下:
//功能:求最大公约数
//参数: x 、y number
//返回值: number
function gcd(x , y){
if(x % y === 0){
return y ;
}
return gcd(y , x % y)
//三目运算符写法:
//return x % y === 0 ? y : gcd(y , x % y) ;
}
var res = gcd(5 , 20) ;
console.log(res) ; //5
其他的方法:
1.最大公约数 — 循环求余数
<script>
//最大公约数 --- 循环求余数
//功能:两个数的最大公约数
//参数:x,y number
//返回值:最大公约数 number
function gcd(x , y){
//比较两个数的大小,取较小的数
var min = x < y ? x : y ;
//从大到小循环找第一个公约数
for(var i = min ; i >= 1 ; i--){
//判断是否为公约数
if(x % i == 0 && y % i == 0){
return i ;
}
}
}
var res = gcd(5 , 20);
document.write(res) ; //5
</script>
f方法:大数对小数求余,重复这个过程直到余数为 0
<script>
// 最大公约数 --- 欧几里得算法 -- 递归实现
//递归:大数对小数求余,重复这个过程直到余数为 0
//功能:求最大公约数
//参数:m,n number
//返回值: number
function gcd(m , n){
//大数能否整除小数
var max = m > n ? m : n ;
var min = m < n ? m : n ;
if(max % min == 0){
//如果能整除,小数就是最大公约数
return min ;
}
else{
return f(min, max % min) ;
}
}
var res = gcd(5 , 20) ;
document.write(res) ; //5
</script>
读到这里,这篇“JavaScript如何求两个数的最大公约数”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注编程网node.js频道。
--结束END--
本文标题: JavaScript如何求两个数的最大公约数
本文链接: https://lsjlt.com/news/88949.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2022-06-04
2022-06-04
2022-06-04
2022-06-04
2022-06-04
2022-06-04
2022-06-04
2022-06-04
2022-06-04
2022-06-04
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0