任意积分求法
Posted ls-pankong
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了任意积分求法相关的知识,希望对你有一定的参考价值。
#include<iostream> #include<cmath> using namespace std; typedef double (*fpoint)(double x); //新定义的函数类型,里边有一个double变量 double fun1(double x){ const int u=0; const int b=1; const double Pi=3.14159; double coefficient=1/(sqrt(2*Pi)*b); double index = -((x-u)*(x-u)/(2*b*b)); return coefficient*exp(index); } double fun2(double x){ return 3*x*x+4*x; } double fun3(double x){ return exp(x); } double fintegration(fpoint f,const long long N=50000,const double minvalue=-1000,const double maxvalue=1000){ double distance=(maxvalue-minvalue)/N; long double sum=0; for(int i=0;i<N;i++){ double length; double x1,x2; x1=minvalue+i*distance; x2=minvalue+(i+1)*distance; length=(f(x1)+f(x2))/2; sum+=length*distance; } return sum; } int main(){ int m,n; double q; cout<<"请输入积分区间: "; cin>>m>>n; cout<<"请输入精度:"; cin>>q; double w = (n-m)/q; cout<<w<<endl; cout<<fintegration(fun3,w,m,n)<<endl; return 0; }
以上是关于任意积分求法的主要内容,如果未能解决你的问题,请参考以下文章
hdu5795 A Simple Nim 求nim求法,打表找sg值规律 给定n堆石子,每堆有若干石子,两个人轮流操作,每次操作可以选择任意一堆取走任意个石子(不可以为空) 或者选择一堆,把它分成