近似求PI

简介: 近似求PI

7-51 近似求PI (15 分)


本题要求编写程序,根据下式求π的近似值,直到最后一项小于给定精度eps。


2π=1+31!+3×52!+3×5×73!+⋯+3×5×⋯×(2×i+1)i!+⋯


输入格式:


输入在一行中给出精度eps,可以使用以下语句来读输入:


scanf("%le", &eps);


输出格式:


在一行内,按照以下格式输出π的近似值(保留小数点后5位):


PI = 近似值


输入样例:


1E-5


结尾无空行


输出样例:


PI = 3.14158


结尾无空行


#include<iostream>
using namespace std;
int main(){
    double eps,sum=1,fz=1,fm=1;
    cin>>eps;
    for(int i=1;fz/fm>eps;i++){
        fz*=i;
        fm*=2*i+1;
        sum+=fz/fm;
    }
    printf("PI = %.5f",sum*2);
    return 0;
}
目录
相关文章
|
8月前
|
API
PTA-给定精度,求圆周率PI的近似值
给定精度,求圆周率PI的近似值
135 1
|
6月前
np.array()按权重求平均值详解
np.array()按权重求平均值详解
|
7月前
Math.atan2求角度解析
`Math.tan(x/y)` 求得是与y轴的夹角,而 `Math.atan2(y, x)` 求得是与x轴的夹角(范围:\(-\pi\) 到 \(\pi\)),顺时针为负,逆时针为正。`Math.atan2` 函数注意点:y在前,x在后。它能正确处理各象限的角度,例如 `Math.atan2(1, 1)` 返回 \(\frac{\pi}{4}\),而 `Math.atan2(-1, -1)` 返回 \(-\frac{3\pi}{4}\)。
76 0
Math.atan2求角度解析
|
8月前
17.求圆周率PI: PI/4 = 1- 1/3 + 1/5 -1/7 +.....
17.求圆周率PI: PI/4 = 1- 1/3 + 1/5 -1/7 +.....
48 0
|
8月前
|
C++
C++求sinx的n阶积分从0-PI/2
C++求sinx的n阶积分从0-PI/2
61 0
|
8月前
PTA-圆周率PI的近似值
圆周率PI的近似值
89 1
|
分布式计算 资源调度 Java
Spark设计实现π的计算
Spark设计实现π的计算
194 0
007.AcWing 790. 数的三次方根(002)
二分法 相关文章:《二分法的模板讲解》
68 0
MAT之PSO:利用PSO+ω参数实现对一元函数y = sin(10*pi*x) ./ x进行求解优化,找到最优个体适应度
MAT之PSO:利用PSO+ω参数实现对一元函数y = sin(10*pi*x) ./ x进行求解优化,找到最优个体适应度
MAT之PSO:利用PSO+ω参数实现对一元函数y = sin(10*pi*x) ./ x进行求解优化,找到最优个体适应度
|
算法 程序员
MAT之PSO:利用PSO实现对一元函数y = sin(10*pi*x) ./ x进行求解优化,找到最优个体适应度
MAT之PSO:利用PSO实现对一元函数y = sin(10*pi*x) ./ x进行求解优化,找到最优个体适应度
MAT之PSO:利用PSO实现对一元函数y = sin(10*pi*x) ./ x进行求解优化,找到最优个体适应度