题目:
根据下面关系式,求圆周率的值,直到最后一项的值小于给定阈值。
输入格式:
输入在一行中给出小于1的阈值。
输出格式:
在一行中输出满足阈值条件的近似圆周率,输出到小数点后6位。
输入样例:
0.01 |
输出样例:
3.132157 |
JavaScript代码:
const { parse } = require('path')
var readline = require('readline')
const rl = readline.createInterface({
input: process.stdin,
output: process.stdout
})
rl.on('line', function(line) {
var m = parseFloat(line)
var ret = rate(m)
console.log(ret)
})
function rate(m) {
var s = 0
var item
for(let j = 0; ; j++) {
var mul = 1
for(let i = 1; i <= j; i++) {
mul = mul * i
}
var odd = 1
for(let i = 1;i <= 2 * j + 1; i++) {
if(i % 2 != 0) {
odd = odd * i
}
}
item = mul / odd
s += item
var pi = s * 2
if(item < m) {
return pi.toFixed(6)
}
}
}