【JavaScript】7-15 计算圆周率 (15分)

题目:

根据下面关系式,求圆周率的值,直到最后一项的值小于给定阈值。

输入格式:

输入在一行中给出小于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)
        }             
    }
         
}

 

posted @ 2021-01-25 15:23  moonskies  阅读(304)  评论(0编辑  收藏  举报