JS编写 最大公约数和最小公倍数
利用辗转相除法,直到余数为0时,它的除数(还是被除数来着,忘了,小学学的不好,反正就是%前面那个)就是最大公约数
最小公倍数求法为:两数相乘除以最大公约数就是最小公倍数。
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>无标题文档</title>
</head>
<body>
<div style="position: absolute; top: 226px; left: 358px; height: 223px;">
<form>
<b style="padding-left:52px;font-size:2em;font-family: "微软雅黑";">第一个数: </b><input type="text" name="n1" id="n1" style="height: 50px;width: 300px;border: 1px solid #2532D3;border-radius: 5px;font-size: 38px;"><br/>
<b style="padding-left:52px;font-size:2em;font-family: "微软雅黑";">第二个数: </b><input type="text" name="n2" id="n2" style="height: 50px;width: 300px;border: 1px solid #2532D3;border-radius: 5px;font-size: 38px;"><br/>
<b style="padding-left:20px;font-size:2em;font-family: "微软雅黑";">最大公约数: </b><input type="text" name="max1" id="max1" readonly style="height: 50px;width: 300px;border: 1px solid #2532D3;border-radius: 5px;font-size: 38px;"><br/>
<b style="padding-left:20px;font-size:2em;font-family: "微软雅黑";">最小公倍数: </b><input type="text" name="min1" id="min1" readonly style="height: 50px;width: 300px;border: 1px solid #2532D3;border-radius: 5px;font-size: 38px;"><br/>
<input type="button" value="start" onClick="f4()" style="font-size: 25px; height: 50px; width: 120px; position: absolute; left: 200px; top: 250px;">
</form>
</div>
<script>
function f4(){
var a1=document.getElementById("n1").value*1;
var a2=document.getElementById("n2").value*1;
var t=a1*a2;
if(a1<a2){
var temp=a1;
a1=a2;
a2=temp;
}
var big1=1;
while(big1!=0){
big1=a1%a2;
a1=a2;
a2=big1;
}
document.getElementById("max1").value=a1;
document.getElementById("min1").value=t/a1;
}
</script>
</body>
</html>