码迷,mamicode.com
首页 > 其他好文 > 详细

Integer's divisors 关于整数的约数

时间:2017-08-26 13:47:01      阅读:194      评论:0      收藏:0      [点我收藏+]

标签:amp   fun   string   div   sans   prim   for循环   整数   ==   

 

Create a function named divisors/Divisors that takes an integer and returns an array with all of the integer‘s divisors(except for 1 and the number itself). If the number is prime return the string ‘(integer) is prime‘ (null in C#) (use Either String a in Haskell and Result<Vec<u32>, String> in Rust).

Example:

divisors(12); // should return [2,3,4,6]
divisors(25); // should return [5]
divisors(13); // should return "13 is prime"

方法一
 1 function divisors(integer) {
 2   var arr = [];
 3   for(var i = 2; i < integer; i++){
 4      if(integer % i ===0){
 5      arr.push(i);}
 6    }
 7   if(arr.length ===0){
 8   return integer+‘ is prime‘;
 9   }else{
10   return arr;}     
11 };
上面方法不够完美,for循环里面 i <integer ,有重复,可以用如下方法,更简洁
方法二
1 function divisors(integer) {
2   var arr = [];
3   for (var i = 2; i <= Math.floor(integer / 2); ++i)
4   if (integer % i === 0) arr.push(i);
5   return arr.length ? arr : integer + ‘ is prime‘;
6 };

 

 

 

Integer's divisors 关于整数的约数

标签:amp   fun   string   div   sans   prim   for循环   整数   ==   

原文地址:http://www.cnblogs.com/kid2333/p/7434900.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!