ln2 and pi.cpp

来自「Jacobi_MPI. ln2 & pi 的计算,基于Romberg and 」· C++ 代码 · 共 31 行

CPP
31
字号
// fuck.cpp : Defines the entry point for the console application.
//

#include <stdio.h>
#include <math.h>
double Sim_F(double x)
{
	return 1.0/x; // ln2
	//return 1.0/(x*x+1); // pi
}
double Sim(double a,double b,double ep)
{
	double s1,s2=0,h=b-a;
	int n=1,k;
	s1=(Sim_F(a)+4*Sim_F((a+b)/2)+Sim_F(b))*h/6;
	do{
		if(n>1) s1=s2;
		for(k=0,s2=0;k<n;k++)
			s2+=2*Sim_F(a+(k+0.25)*h)-Sim_F(a+(k+0.5)*h)+2*Sim_F(a+(k+0.75)*h);
		s2=0.5*s1+h*s2/6;
		h/=2,n*=2; // n=(b-a)/h;
	}while(fabs(s2-s1)<ep);
	return s2;
}
int main(int argc, char* argv[])
{
	printf("\n复化Simpson %.18lf",Sim(1,2,0.00000001));
	return 0;
}

⌨️ 快捷键说明

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