2 回答

TA貢獻(xiàn)1797條經(jīng)驗(yàn) 獲得超6個(gè)贊
您應(yīng)該在應(yīng)用操作BigInt 之前將每個(gè)參數(shù)轉(zhuǎn)換為:
function geoSum(a, r, n) {
const an = BigInt(a);
const rn = BigInt(r);
const nn = BigInt(n);
return an * ((1n - rn ** nn) / (1n - nn));
}
const result = geoSum(150, 151, 152);
console.log(String(result));
console.log(Number(result));

TA貢獻(xiàn)1875條經(jīng)驗(yàn) 獲得超3個(gè)贊
我只是用BigInt.
function geoSum(a, r, n) {
return BigInt(BigInt(a) * (BigInt(BigInt(1) - BigInt(BigInt(r) ** BigInt(n))) /
BigInt(BigInt(1) - BigInt(n))));
}
geoSum(2,5,10)
回來(lái):
2170138n
我不知道結(jié)果對(duì)你是否有意義。
添加回答
舉報(bào)