1.2 KiB
1.2 KiB
id | title | challengeType | forumTopicId | dashedName |
---|---|---|---|---|
597f1e7fbc206f0e9ba95dc4 | Fattori di un numero intero | 1 | 302265 | factors-of-an-integer |
--description--
Scrivi una funzione che restituisce i fattori di un numero intero positivo come array.
Questi fattori sono i numeri interi positivi per i quali il numero da considerare può essere diviso per ottenere un risultato intero positivo.
--hints--
factors
dovrebbe essere una funzione.
assert(typeof factors === 'function');
factors(45)
should return [1,3,5,9,15,45]
.
assert.deepEqual(factors(45), ans[0]);
factors(53)
should return [1,53]
.
assert.deepEqual(factors(53), ans[1]);
factors(64)
should return [1,2,4,8,16,32,64]
.
assert.deepEqual(factors(64), ans[2]);
--seed--
--after-user-code--
const ans=[[1,3,5,9,15,45],[1,53],[1,2,4,8,16,32,64]];
--seed-contents--
function factors(num) {
}
--solutions--
function factors(num)
{
let n_factors = [], i, sqr=Math.floor(Math.sqrt(num));
for (i = 1; i <=sqr ; i += 1)
if (num % i === 0)
{
n_factors.push(i);
if (num / i !== i)
n_factors.push(num / i);
}
n_factors.sort(function(a, b){return a - b;});
return n_factors;
}