求餘弦函式的近似值求糾錯

時間 2022-03-12 20:40:20

1樓:

#include "stdio.h"

#include "math.h"

double fact(int n)

double i,sum=1;

for(i=2;i<=n;i++)

sum*=i;

return sum;

double funcos(double e, double x)int i,m=1;//加一個標誌位,在1和-1之前變換double sum=0,fenzi,fenmu,t;//這兒,你的sum沒初值,結果必然是錯的,初始化為0

for(i=0;;i+=2)

fenzi=pow(x,i);

fenmu=fact(i);

t=m*fenzi/fenmu;

if(fabs(t)break;

sum+=t;

m=-m;

//加正項去負項的做法有問題 if((i+4)%4==0) sum+=t;

// else sum-=t;

return sum;

int main(void)

int repeat, ri;

double e, sum, x;

scanf("%d", &repeat);

for(ri = 1; ri <型別最好用%lf 格式控制scanf("%le%le",&e,&x);

sum=funcos(e,x);

printf("sum = %f\n", sum);

結果:你的樣例1輸出是錯的

cos(0)==1

sin(0)==0才是對的哦

2樓:匿名使用者

double funcos(double e, double x)

return sum;

}整體程式沒有大問題,你再試試吧。

3樓:匿名使用者

fenzi=pow(x,i);

fenmu=fact(i);

t=fenzi/fenmu;

if(fabs(t)

if((i+4)%4==0) sum+=t;

else sum-=t;

c語言求sin(x)近似值的問題

include include int main s s a c b t fabs s s0 這裡應該計算的是兩次計算的差,而不應該呼叫sin x 因為你的程式是為了計算sin x 的近似值 s0 s 記錄上次的計算結果 k while t u printf lf s return 0 你要觀察兩個...

C語言近似求PI,急,C語言題目 求 的近似值 急!!!!!!!!!!!!!!

include void main printf pi 5f pi 2 include int main double eps scanf le eps double sum 1 double a 1 double fenzi 1 double fenmu 1 int i 1 double pi w...

求e的0 01次方的近似值

令y f x e的x次方 x 0.01f x x f x dy dx x e的0次方 e的0次方 lne 0.01 1 0.01 1.01 在實際問題中許多數值是無法完全準確的,許多數值要求不必弄得完全準確的,考慮這些數值的大概的數值,這就是近似數 或近似值,在方程中常稱為近似解 使用近似數就有一個...