以下のコードでは、渡された値を素因数分解して文字列で結果を返す関数primeFactorizationを定義しています。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | function primeFactorization(value) { var divisorTable = []; for ( var number = 2; number <= value; number++) { if (value % number === 0) { var exponent = 0; while (value % number === 0) { exponent++; value /= number; } divisorTable.push({number, exponent}); } } var ret = "" ; divisorTable.forEach((divisor, index) => { ret += `${divisor.number}^${divisor.exponent}`; if (index !== divisorTable.length - 1) ret += ' * ' ; }) return ret; } |