编程求定积分
㈠ 编程求x的n次方乘e的x的n-1次方的定积分
一、按顺推迭代法
>> E(1)=0.3679;
>> for n=2:15,E(n)=1-n*E(n-1);end
>> E(15)
二、按逆推迭代法
>> E(15)=0.0590;
>> for n=15:2,E(n-1)=(1-E(n))/n;end
>> E(1)
用matlab运行结果为
分析其运行结果,可以看到顺推迭代法的结果不稳定,而逆推迭代法的结果很稳定(与精确值的误差很小)。
㈡ VC编程求定积分
#include<stdio.h>
voidmain()
{备裤凳doublen,s,f0,h,x,i;
printf("输入区间分隔仿旅数纯亏n:");
scanf("%lf",&n);//这里是字母l,不是数字
h=1.0/n;
f0=4.0;
s=0.0;
for(i=1;i<n;i++)
{s+=f0*h;x=i*h;
f0=4.0/(1.0+x*x);}/*∫4/(1+x*x)dx积分上下限位0到1*/
printf("用矩形法求得定积分为:%1f ",s);}
㈢ 求C语言 用梯形法求定积分(数值求解算法)
#include<stdio.h>
float f(float x)
{
return x*x+2*x+1;
}
void main()
{
float a,b,len,F=0;//
int n,i;
printf("Please input a,b: ");
scanf("%f%f",&a,&b);
printf("Please input n: ");
scanf("%d",&n);
len=(a+b)/n;//区间长度
for(i=0;i<n;i++)
{
F+=len*f(a);
a+=len;
}
printf("%f\n",F);
}
结果例如:
Please input a,b: 0 10.0
Please input n: 100
437.349792
㈣ matlab编程怎么求无穷限定积分
matlab编程求无穷限定积分:
用如态帆下程序:
syms x
f = exp(-x^2);
int(f, x, 0, inf)
结果是pi^(1/2)/2,即2分之根号派
㈤ C语言,用梯形法编程求定积分x^3+x/2+1的值
这个其实很简单,给你做了一个很简单的通用的积分函数,
已经做过优化,自己一调用就可以了,效率很高。
#include <stdio.h>
double f(double x) //返回函数的值
{ double y;
y=x*x+x*2+1.0;
return y;
}
double Integrate(double (*f)(double),double a,double b,int n) //计算函数的定积分
{ double dx,y,sy,x;
if(n<=1)return 0.0;
dx=(b-a)/n;
x=a;
sy=0.0;
for(int i=0;i<=n;i++,x+=dx)
sy+=f(x);
sy-=f(a)/2.0;
sy-=f(b)/2.0;
return sy*dx;
}
void main()
{ double s;
s=Integrate(f, 1, 3, 100000);
printf("s=%lf\n",s);
}
㈥ C++中求定积分的编程
#include <亮团stdio.h>
#define DELTA 0.00001//Δt
int main()
{
double v0=5,t,s=0;
for(t=10.0;t<=15.0;t+=DELTA)
s+=(v0+2*t)*DELTA;
printf("s=%f\敬宴橘n",s);
return 0;}
结祥知果为150