实现最一个整数的质因数的拆分,例如:90可以才分为2*3*3*5,具体代码如下:
<script>
var num = prompt('请输入一个整数:','90');
var regex = new RegExp(/^[0-9]*[1-9][0-9]*$/);
var i = 2;
var handle = num;
var arr = new Array();
while(i<handle){ //i小于num则一直循环下去,直到i=num为止
var result = handle/i;
if(regex.test(result)){ //除2结果为整数
arr.push(i);
i=2;
handle=result;
}else{
i++;
}
if(i == handle-1){ //判断是否要结尾
arr.push(handle)
break;
}
}
//打印结果
var str = String();
for(i=0;i<arr.length;i++){
str += arr[i];
if(i != arr.length-1)
str += '*';
}
alert('可以分解为 :'+str);
</script>
总结:
1.用prompt()函数输入一个数。主要用法是prompt("请输入一个数:","90");
2.采用正则表达式来实现判断整除以后是不是整数,主要用str.test(正则表达式名),如果匹配返回的是true;
3.采用str+=把字符连接起来。