用c语言算圆周率的近似值,用C语言求圆周率

本文目录一览:

C语言编程求出圆周率的近似值。

#include stdio.h

int main()

{

    double pi;

    unsigned long i,n;

    scanf(“%lu”,n);

    for(pi=1,i=1;i=n;++i)

    {

        pi*=(i+1)/2*2.0 / ( (i+1)/2*2+(i-1)%2*2-1 );

    }

    printf(“pi=%.10lf\n”,pi*=2);

    return 0;

}

用C语言求π的近似值

循环体里面的公式有点问题,我重新写了一下,代码如下:

void main()

{

double i, pi;

i=1.0,pi=0.0;

while (fabs(1.0/i) = 1e-6){

pi=(pi + pow(-1.0,i+1)/(2*i-1));

i++;

}

printf(“pi=%f\n”,pi* 4);

system(“pause”);

}

注意输出的结果是pi*4,望采纳!

c语言 根据公式求出π的近似值。

#includestdio.h

double powi(double num, int multi) {

    double r = 1.0;

    int i;

    for (i = 0; i  multi; i++) {

        r *= num;

    }

    return r;

}

double item(int n) {

    double r = 1.0;

    int i;

    /*  1.0 * 1 / 2 * 3 / 4 * 5 / 6 …..  */

    for (i = 1; i  n; i++) {

        if (i % 2) {

            r *= i;

            /*  printf(“*%d”, i); */

        } else {

            r /= i;

            /*  printf(“/%d”, i); */

        }

    }

    r *= 1;

    /*  printf(“*%d”, 1); */

    r /= n;

    /*  printf(“/%d”, n); */

    r *= powi(0.5, n);

    /*  printf(“*%lf”, powi(0.5, n)); */

    /*  printf(” — item %d: %lf \n”, n, r); */

    return r;

}

int main() {

    double pd6 = 0.0, ci = 0.0;

    int i = 1;

    do {

        ci = item(i);

        pd6 += ci;

        i += 2;

    } while (ci = 1e-6);

    printf(“PI=%.6lf\n”, pd6 * 6);

    return 0;

}

完全按你的公式做的,结果真的对了,3.141592(这里对6位有效数字有个存疑,就是应该输出6位还是7位数字,理论上有效数字后面应该带上一个估值,用来修正有效数字的,如果要求真的那么严格,我可以给你写个函数用来输出6位有效数字)。

一般级数很少有用这个复杂的式子的吧,一般都是 1-1/3+1/5-1/7+1/9-1/11 这个式子,你的公式竟然也是对的。楼上的完全没看懂级数的项的规律。

————————————————-

以上是20:29分发的回答,既然你没有追问,我只能通过修改这个回答,慢慢解释一下:

powi函数 是为了不引用庞大的math库,而自己写的一个简单的正整数幂的函数(math库里有double pow(double, double),这个运算过程中不需要小数的幂值,就用循环乘法来实现了。

item函数 是每个项的计算过程,仔细看的话可能会发现,这些项并不是 i=1,2,3,4… 而是 i=1,3,5,7… 这个是为了符合级数的项中的值,都是奇数在做运算。

item里面的那些注释掉的 printf 是故意留下用来观察级数表达式的。由于每一项都是多个数值相乘或除,如1/2×3/4×5/6 其实就是1 * 2 / 3 * 4 ,这些printf可以在计算每一项的时候把整个过程打印出来。

级数的难点其实就是找到项的通用表达式,你的公式已经把表达式写的很清楚了,就看你把它提取成算法了

C语言程序设计,计算π的近似值

算法错误。程序思路非常混乱。n++只一次,并没有循环,那么一开始计算x0时n=1,以后每次计算x0的值时n都等于2。而计算公式是要对n进行累加循环的。

#include stdio.h

void main(){

double i,k=1;

for(i=1;k*(i*2*i*2/((i*2-1)*(i*2+1))-1)=1e-6;i++)

k*=i*2*i*2/((i*2-1)*(i*2+1));

printf(“PI=%.2lf”,k*2);

}

C语言编程有公式 可以计算π的近似值。求前后两次迭代结果π 之差的绝对值小于e时相应的最小迭代次数n

代码如下:

#includestdio.h

int main() {  

  int n = 1;

  double pi = 2.0 * 2 * 2/3; // n=1时pi的初值

  double e; // 精度

  scanf(“%lf”, e);

  while (1) {

      ++n;

      int m = 2 * n;

      double pn = pi * m / (m – 1) * m / (m + 1);

      if (pn – pi e) {

          pi = pn;

          break;

      }

      pi = pn;

  }

  printf(“n=%d, pi=%lf\n”, n, pi);

  return 0;

}

运行结果如下:

c语言编程,求π的近似值

#include stdio.h

#include math.h

int main()

{

int x,z;

float y;

y=0;

z=0;

for(x=1;fabs(1.0/x)1e-6;x+=2)

{

z=z+1;

if(z%2!=0)

{

y=y+1.0/x;

}

else

{

y=y-1.0/x;

}

}

y=y*4;

printf(“π=%10.6f\n”,y);

return 0;

}

原创文章,作者:CXPJ,如若转载,请注明出处:https://www.506064.com/n/135887.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
CXPJCXPJ
上一篇 2024-10-04 00:15
下一篇 2024-10-04 00:15

相关推荐

  • AES加密解密算法的C语言实现

    AES(Advanced Encryption Standard)是一种对称加密算法,可用于对数据进行加密和解密。在本篇文章中,我们将介绍C语言中如何实现AES算法,并对实现过程进…

    编程 2025-04-29
  • 学习Python对学习C语言有帮助吗?

    Python和C语言是两种非常受欢迎的编程语言,在程序开发中都扮演着非常重要的角色。那么,学习Python对学习C语言有帮助吗?答案是肯定的。在本文中,我们将从多个角度探讨Pyth…

    编程 2025-04-29
  • Python被称为胶水语言

    Python作为一种跨平台的解释性高级语言,最大的特点是被称为”胶水语言”。 一、简单易学 Python的语法简单易学,更加人性化,这使得它成为了初学者的入…

    编程 2025-04-29
  • OpenJudge答案1.6的C语言实现

    本文将从多个方面详细阐述OpenJudge答案1.6在C语言中的实现方法,帮助初学者更好地学习和理解。 一、需求概述 OpenJudge答案1.6的要求是,输入两个整数a和b,输出…

    编程 2025-04-29
  • Python按位运算符和C语言

    本文将从多个方面详细阐述Python按位运算符和C语言的相关内容,并给出相应的代码示例。 一、概述 Python是一种动态的、面向对象的编程语言,其按位运算符是用于按位操作的运算符…

    编程 2025-04-29
  • Python语言由荷兰人为中心的全能编程开发工程师

    Python语言是一种高级语言,很多编程开发工程师都喜欢使用Python语言进行开发。Python语言的创始人是荷兰人Guido van Rossum,他在1989年圣诞节期间开始…

    编程 2025-04-28
  • Python语言设计基础第2版PDF

    Python语言设计基础第2版PDF是一本介绍Python编程语言的经典教材。本篇文章将从多个方面对该教材进行详细的阐述和介绍。 一、基础知识 本教材中介绍了Python编程语言的…

    编程 2025-04-28
  • Python利用级数计算圆周率

    本文将详细介绍Python利用级数计算圆周率的方法,旨在帮助Python开发者更好地理解级数原理。 一、Leibniz公式计算圆周率 Leibniz公式是一种基于级数的求圆周率的方…

    编程 2025-04-28
  • Python语言实现人名最多数统计

    本文将从几个方面详细介绍Python语言实现人名最多数统计的方法和应用。 一、Python实现人名最多数统计的基础 1、首先,我们需要了解Python语言的一些基础知识,如列表、字…

    编程 2025-04-28
  • Python作为中心语言,在编程中取代C语言的优势和挑战

    Python一直以其简单易懂的语法和高效的编码环境而著名。然而,它最近的发展趋势表明Python的使用范围已经从脚本语言扩展到了从Web应用到机器学习等广泛的开发领域。与此同时,C…

    编程 2025-04-28

发表回复

登录后才能评论