⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 新建 文本文档 (2).txt

📁 用C++小程序
💻 TXT
字号:
#include<stdio.h>
#include<math.h>
double pow(double x,double y);
double A(int n);
double f(double x);
double A(int n)
{
	int i;
	double a=0.0,h=1.0;
	for(i=1;i<=(int)pow(2,n);i++)
		a=a+f(0.0+(2*i-1)*h/pow(2,n+1));
	return a;
}


double f(double x )
{
	double y;
	y=4/(1+x*x);
	return y;
}

void main()
{  
	int k;
	double y=0.0,h=1.0;
	double T[100],S[100],C[100],R[100];
	long double  o=0.5e-8;

	T[0]=(h/2)*(f(0.0)+f(1.0));
	T[1]=T[0]/2+(h/2)*f(0.0+h/2);
	T[2]=T[1]/2+(h/4)*(f(0.0+h/4)+f(0.0+0.75*h));
	T[3]=T[2]/2+(h/8)*A(2);
	T[4]=T[3]/2+(h/16)*A(3);
	S[0]=4*T[1]/3-T[0]/3;
    S[1]=4*T[2]/3-T[1]/3;
	S[2]=4*T[3]/3-T[2]/3;
	C[0]=16*S[1]/15-S[0]/15;
	C[1]=16*S[2]/15-S[1]/15;
	R[0]=64*C[1]/63-C[0]/63;

	
	for(k=4;;k++){
		T[k+1]=T[k]/2+h/(pow(2,k+1))*A(k);
	    S[k-1]=4*T[k]/3-T[k-1]/3;
		C[k-2]=16*S[k-1]/15-S[k-2]/15;
        R[k-3]=64*C[k-2]/63-C[k-3]/63;
		if(fabs(R[k-3]-R[k-4])>=o)continue;
		else break;
	}
	   printf("圆周率的值为%lf",R[k-3]);
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -