【c语言】用π/4 ≈ 1 - 1/3 + 1/5 - 1/7 +... 公式求π的近似值,直到发现某一项的绝对值小于10^6为止。

// 用π/4 ≈ 1 - 1/3 + 1/5 - 1/7 +... 公式求π的近似值,直到发现某一项的绝对值小于10^6为止。

#include <stdio.h>
#include <math.h>

int main()
{
	double sign = 1.0;
	int i;
	double sum = 0.0;
	for(i = 1;fabs(i) < pow( 10,6 ); i = i + 2)
	{
			sum = sum + sign / i;
			sign = ( -1 ) * sign;
	}
	sum = 4 * sum;
	printf("π = %f\n",sum);
	return 0;
}

<img src="http://img.blog.csdn.net/20150424153138568?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvemhhb3lhcWlhbjU1Mg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />

时间: 2024-08-24 17:32:27

【c语言】用π/4 ≈ 1 - 1/3 + 1/5 - 1/7 +... 公式求π的近似值,直到发现某一项的绝对值小于10^6为止。的相关文章

使用C语言编写程序,求解有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个序列的前20项

void test() {  //思路:找规律->从3/2开始 下一个数的分母是上一个数的分子,下一个数的分子是上一个数的分子分母之和  double mol = 2.0, den = 1.0, denlast = 0;  double div = mol / den;  double sum = 0;  int i = 0;  for (i = 0; i < 20; i++)  {   printf("%g/%g ", mol, den);//%g省去浮点数的无效0   

c语言:求π的近似值

用公式π/4=1-1/3+1/5-1/7...求π的近似值,直到发现某一项的绝对值小于10^6为止(该项不累加) 解:程序: #include<stdio.h> #include<math.h> int main() { int sign = 1; double pi = 0.0, n = 1.0, term = 1.0;//term表示当前项 while (fabs(term) >= 1e-6) { pi += term; n += 2; sign = -sign; ter

c语言:编辑程序实现斐波拉契数列:1,1,2,3,5,8...;后一项为前面两项之和

程序: //斐波拉契数列:1,1,2,3,5,8... //f(n)={[(1+5^0.5)/2]^n - [(1-5^0.5)/2]^n}/(5^0.5) #include<stdio.h> int main() { int i=0, n = 0; int num1 = 1; int num2 = 1; int num3 = 0; scanf("%d", &n); if (n <= 2) { printf("%d\n", num1); }

c语言:不使用(a+b)/2这种方式,求两个数的平均值。

程序: #include<stdio.h> int main() { int a, b; int avg = 0; scanf("%d%d", &a, &b); avg = (a + b) >> 1; //右移一位相当于除以2 printf("%d\n",avg); return 0; } 结果: 6 8 7

浙大版《C语言程序设计(第3版)》题目集 练习2-13 求N分之一序列前N项和 (15 分)

练习2-13 求N分之一序列前N项和 (15 分) 本题要求编写程序,计算序列 1 + 1/2 + 1/3 + ... 的前N项之和. 输入格式: 输入在一行中给出一个正整数N. 输出格式: 在一行中按照"sum = S"的格式输出部分和的值S,精确到小数点后6位.题目保证计算结果不超过双精度范围. 输入样例: 6 输出样例: sum = 2.450000 思路:每次循环分母加一. 代码如下: #include<stdio.h> int main() { int i, n,

浙大版《C语言程序设计(第3版)》题目集 练习2-14 求奇数分之一序列前N项和 (15 分)

练习2-14 求奇数分之一序列前N项和 (15 分) 本题要求编写程序,计算序列 1 + 1/3 + 1/5 + ... 的前N项之和. 输入格式: 输入在一行中给出一个正整数N. 输出格式: 在一行中按照"sum = S"的格式输出部分和的值S,精确到小数点后6位.题目保证计算结果不超过双精度范围. 输入样例: 23 输出样例: sum = 2.549541 思路:每次循环分母加二.代码如下: #include<stdio.h> int main() { int i, n

C语言用公式求π近似值

终止条件: 某一项: 1 / n+2 < 10 ^ -6; 1e-6即0.000001, 代码如下: 1 #include<stdio.h> 2 #include <math.h> 3 4 int main() { 5 double quarter = 0; 6 double PI = 0; 7 int sign = -1; 8 double term = 1.0; 9 for ( ; 1.0 / term > 1e-6; ) { 10 // pow(10, -6) =

c语言基础编程

作业: 1.二进制,八进制,十进制之间的相互转换 2.测试转义字符 3.测试强制类型转换 4.测试赋值运算符  = += -= *= /= %= <<= >>= ^= |= &= number += 2; 5.测试不同类型数字的运算(+ - * /)结果 6.从键盘输入一个实数,求其绝对值. 7.从键盘输入三个数,按升序输出. 8.已知方程 ax*x + bx + c = 0,输入a.b,求方程的根. 9.从键盘输入x,求y的值: y = 1  若 x > 0  0 

C语言for循环

语言作为程序设计的入门语言,对于计算机专业学生的重要意义不言而喻.而循环语句是C语言学习中的一个重点与难点.本文根据学习经验,结合全国计算机等级考试三级网络技术机试真题,浅谈C语言循环语句的学习. 循环结构是结构化程序设计的基本结构之一.它和顺序结构.选择结构共同作为各种复杂程序的基本构造单元.在程序设计中许多问题需要用到循环语句,如处理 学校学生成绩:求若干个数的和:求一个数的阶乘等等.循环语句是实现程序设计中许多有规律.需要多次重复执行某些操作的最为有效的方法.循环结构是程序设 计中的一个重