通过循环 i -----(一个数的质因数的范围,大于2,并且小于等于他自身 2 <= i <= user) 首先判断 user的质因数 是否等于他本身,如果等于,则结束循环,如果不等于,则进入下个循环,循环 除以 这个数 即 user = user / i,直至这个数不能再被再被整除 即 user % i != 0,跳出循环
var user = parseInt(prompt("请输入一个正整数:")); document.write(user+"="); for(var i = 2;i <=user;i++) { if(i == user){ document.write(1+"*"+i); }else{ while (user % i == 0) { user = user / i; if(i!=user){ document.write(i+"*"); }else { document.write(i); } } } //例如:输入90,输出:90 = 2*3*3*5外层循环是,循环找出质子,内层循环是,将给定的数,不停地整除,分解,再赋给他自身,在进行循环找出所有的质因数。
首先判断 两个数中最大的那个数,作为 i 的取值范围 满足if条件的,最后输出的就是最大的公约数 最后根据公式计算最大公倍数。
