求sin的:參考下 #includestdio.h void main() { double x,a,b,sum=0; printf("請輸入x的弧度值:\n"); scanf("%lf",x); int i,j,count=0; for(i=1;;i+=2) { count++; a=b=1; for(j=1;j=i;j++) { a*=x; b*=(double)j; } if(a/b0.0000001) break; else { if(count%2==0) sum-=a/b; else sum+=a/b; } } printf("%lf\n",sum); }
成都創(chuàng)新互聯(lián)公司 - 成都服務(wù)器托管,四川服務(wù)器租用,成都服務(wù)器租用,四川網(wǎng)通托管,綿陽服務(wù)器托管,德陽服務(wù)器托管,遂寧服務(wù)器托管,綿陽服務(wù)器托管,四川云主機(jī),成都云主機(jī),西南云主機(jī),成都服務(wù)器托管,西南服務(wù)器托管,四川/成都大帶寬,機(jī)柜大帶寬,四川老牌IDC服務(wù)商
這是辛普森積分法。
給你寫了fun_1( ),fun_2(),請自己添加另外幾個(gè)被積函數(shù)。
調(diào)用方法 t=fsimp(a,b,eps,fun_i);
a,b --上下限,eps -- 迭代精度要求。
#includestdio.h
#includestdlib.h
#include math.h
double fun_1(double x)
{
return 1.0 + x ;
}
double fun_2(double x)
{
return 2.0 * x + 3.0 ;
}
double fsimp(double a,double b,double eps, double (*P)(double))
{
int n,k;
double h,t1,t2,s1,s2,ep,p,x;
n=1; h=b-a;
t1=h*(P(a)+P(b))/2.0;
s1=t1;
ep=eps+1.0;
while (ep=eps)
{
p=0.0;
for (k=0;k=n-1;k++)
{
x=a+(k+0.5)*h;
p=p+P(x);
}
t2=(t1+h*p)/2.0;
s2=(4.0*t2-t1)/3.0;
ep=fabs(s2-s1);
t1=t2; s1=s2; n=n+n; h=h/2.0;
}
return(s2);
}
void main()
{
double a,b,eps,t;
a=0.0; b=3.141592653589793238; eps=0.0000001;
// a definite integral by Simpson Method.
t=fsimp(a,b,eps,fun_1);
printf("%g\n",t);
t=fsimp(a,b,eps,fun_2);
printf("%g\n",t);
// ...
printf("\n Press any key to quit...");
getch();
}
#include
#include
double integral(double(*fun)(double x),double a,double b,int,n){
double s,h,y;
int i;
s=(fun(a)+fun(b))/2;
h=(b-a)/n; /*積分步長*/
for(i=1;in;i++)
s=s+fun(a+i*h);
y=s*h;
return y;/*返回積分值*/
}
double f(double x){
return(x*sinx) /*修改此處可以改變被積函數(shù)*/
}
int main(){
double y;
y=integral(f,1.0,2.0,150);/*修改此處可以改變積分上下限和步數(shù),步長=(上限-下限)/步數(shù)*/
printf("y=%f\n",y);
return 0;
}
int main()
#include?stdio.h
#include?math.h
#define?PI?(acos(-1))
#define?STEP?(1e-6)
double?func(double?x);
double?inte(double?up,double?down,double?func(double));
int?main(void)?
{
double?up,down;
printf("%lf%lf",up,down);
printf("%lf\n",inte(1,0,func));
return?0;
}
double?func(double?x)
{
return?1+cos(PI*x);
}
double?inte(double?up,double?down,double?func(double))
{
double?sum;
for(sum=0;down=up;down+=STEP)
{
sum+=func(down)*STEP;
}
return?sum;
}
求解含有三角函數(shù)的定積分c語言程序∫(1+cosπx)dx
#include?stdio.h?
#include?math.h?
#define?PI?(acos(-1))?
#define?STEP?(1e-6)?
double?func(double?x);?
double?inte(double?up,double?down,double?func(double));?
int?main(void)??
{?
double?up,down;?
printf("%lf%lf",up,down);?
printf("%lf\n",inte(1,0,func));?
return?0;?
}?
double?func(double?x)?
{?
return?1+cos(PI*x);?
}?
double?inte(double?up,double?down,double?func(double))?
{?
double?sum;?
for(sum=0;down=up;down+=STEP)?
{?
sum+=func(down)*STEP;?
}?
return?sum;?
}
網(wǎng)頁名稱:c語言求定積分三角函數(shù),用C語言求定積分
URL地址:http://chinadenli.net/article16/hddsdg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供面包屑導(dǎo)航、網(wǎng)站排名、電子商務(wù)、企業(yè)網(wǎng)站制作、虛擬主機(jī)、網(wǎng)站內(nèi)鏈
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)