[英]What is the sum of the digits of the number 2 pow 1000 in JavaScript
我正在寫這個,但沒有得到輸出。
我是新來解決JavaScript中的項目Euler問題的人
但遇到錯誤,請幫助我。
function pow(n, p) {
var r = (n, 0, 0);
var bn = (n, 0, 0);
for (var i = 1; i < p; i++) {
r = mult(r, bn);
}
return r;
}
function sumDigits(n) {
var bns = bigInt2str(n, 10);
var dStr = 0;
var a = bns.split('');
for (i in a) {
dStr += parseInt(a[i]);
}
return dStr;
}
console.log(sumDigits(pow(2, 1000)));
請幫我
您可以使用:
function pow(n, p) {
var r = bigInt(1); // (n, 0, 0);
var bn = bigInt(n); //var bn = (n, 0, 0);
for (var i = 0; i < p; i++) {
r = r.multiply(bn); //r = mult(r, bn);
}
return r;
}
function sumDigits(n) {
var bns = n.toString(); // bigInt2str(n, 10);
var dStr = 0;
var a = bns.split('');
for (i in a) {
dStr += parseInt(a[i]);
}
return dStr;
}
console.log(sumDigits(pow(2, 1000)));
輸出:
1366
參考:
https://www.npmjs.com/package/big-integer
installation If you are using a browser, you can download BigInteger.js from GitHub or just hotlink to it: <script src="http://peterolson.github.com/BigInteger.js/BigInteger.min.js"></script> If you are using node, you can install BigInteger with npm. npm install big-integer Then you can include it in your code: var bigInt = require("big-integer");
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.