程序9

【程序9
 题目:一个数如果恰好等于它的因子之和,这个数就称为"完数"。例如6=123.编程找出1000以内的所有完数。

 1         function addFactor1(num) {
 2             var sum = 0;
 3             var tmp = "";
 4             for (var i = 0; i <= num; i++) {
 5                 sum = 0;
 6                 var arr = new Array(i);
 7                 for (var j = 1; j <= i/2; j++) {
 8                     if (i % j === 0) {
 9                         var k = 0;
10                         arr[k] = j;
11                         sum += arr[k];
12                         k++;
13                     }
14                 }
15                 if (i === sum) {
16                     tmp += i + "  ";
17                 }
18             }
19             return tmp;
20         }

 

 1         function addFactor2(num) {
 2             var i, j, sum = 0, tmp = "";
 3             for (var i = 0; i < num; i++) {
 4                 sum = 0;
 5                 for (j = 1; j <= i / 2; j++) {
 6                     if (i % j == 0) {
 7                         sum += j;
 8                     }
 9                 }
10                 if (sum === i) {
11                     tmp += i + "  ";
12                 }
13             }
14             return tmp;
15         }

 

 

posted @ 2012-06-13 00:27  前端咖  阅读(232)  评论(0编辑  收藏  举报