js实现找质因数

实现最一个整数的质因数的拆分,例如: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+=把字符连接起来。

posted @ 2016-03-19 19:29  纸鸢&红豆·绿豆  阅读(658)  评论(0编辑  收藏  举报