17.求圆周率PI: PI/4 = 1- 1/3 + 1/5 -1/7 +.....

简介: 17.求圆周率PI: PI/4 = 1- 1/3 + 1/5 -1/7 +.....

(1)我的程序

#include<iostream>
using namespace std;
int YuanZhou(int);
 
int main()
{
    int n;
    double temp,sum=0;
    cout<<"please input an number: "<<endl;
    cin>>n;
    for(int i=1;i<=n;i++)
    {
        if(i%2==0)
        {
            temp=(-1.0/YuanZhou(i));//两个int型相除得到的结果会自动变成int型
        }else
        {
            temp=(1.0/YuanZhou(i));//隐式类型转换
        }
        sum+=temp;
    }
    cout<<4*sum<<endl;
    return 0;
}
 
int YuanZhou(int index)
{
    if(index<0)
    {
        return -1;
    }else
    {
        return (2*index-1);
    }
}


(2)网上的正确程序:

#include<iostream>
#include<iomanip>
#include<cmath>
 
using namespace std;
int main()
{
double item=1, sum=0;
for(int n=1;fabs(item)>1e-6;n++)
{
      sum+=item;
  item*=(-1.0)*(2*n-1)/(2*n+1);
}
 
cout<<"Pi= "<<setiosflags(ios::fixed)<<setprecision(6)<<sum*4<<endl;
 
}
目录
相关文章
|
1月前
|
API
PTA-给定精度,求圆周率PI的近似值
给定精度,求圆周率PI的近似值
55 1
|
16天前
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}\)。
16 0
Math.atan2求角度解析
|
1月前
PTA-圆周率PI的近似值
圆周率PI的近似值
36 1
零基础VB教程061期:常用数学函数第一节 弧度/ abs/sin/cos/tan/atn/exp/log等
零基础VB教程061期:常用数学函数第一节 弧度/ abs/sin/cos/tan/atn/exp/log等
7-69 计算圆周率
7-69 计算圆周率
91 0
|
Serverless C++
C++中的 sqrt、sqrtl 和 sqrtf
C++库中有多种函数可用于计算数字的平方根。最突出的是使用 sqrt。它以双重作为论据。 header 定义了另外两个内置函数,用于计算一个数字(sqrt 除外)的平方根,该数字的参数类型为float和long double。因此,用于计算C++平方根的所有函数都是:
347 0
NPAPI最简单的代码
NPAPI最简单的代码
65 0
4.2、Math数学对象(floor、random、sqrt、pow、abs)
4.2、Math数学对象(floor、random、sqrt、pow、abs)
147 0
|
算法 计算机视觉
每日一面 - sqrt (2)约等于 1.414,如何求sqrt (2)小数点后 10 位
每日一面 - sqrt (2)约等于 1.414,如何求sqrt (2)小数点后 10 位