① c語言用泰勒級數計算sinx,計算sin1,sin2都正確,sin3不正確,不知道哪裡錯了,求大神指導
#include<stdio.h>
#include<math.h>
main()
{
doublefactorial(intm);
intn=1,i=1;/*i為計數變數*/
doublesum=0,x,term;/*term為每一項*/
printf("pleaseinputxtocaculatesinx:");
scanf("%lf",&x);
for(;pow(x,2*n-1)/factorial(2*n-1)>=1e-5;)/*判斷最後一項是否大於1e-5*/
{
term=pow(-1,n-1)*pow(x,2*n-1)/factorial(2*n-1);/*計算每一項*/
sum=sum+term;
i++;
n++;
}
sum=sum+pow(-1,n-1)*pow(x,2*n-1)/factorial(2*n-1);/*補加上最後一個小於1e-5的項*/
printf("sin(x)=%lf time=%d ",sum,i);
return0;
}
doublefactorial(intm)/*計算階乘改成double類型,不然在超過13之後的數都溢出了!*/
{
doublefact=1;
if(m==0)
return(fact);
else
{
while(m)
{
fact*=m;
m--;
}
return(fact);
}
}
② c語言編程,利用泰勒級數求解sinx,輸入x值,求解sinx值,保留小數點後6位。
//#include"stdafx.h"//Ifthevc++6.0,withthisline.
#include"stdio.h"
intmain(void){
inti,t;
doublesum,x,tmp,xx;
printf("Inputx(real-360°~+360°)... ");
scanf("%lf",&x);
xx=x,x*=3.1415926535897932/180;printf("%f ",xx);
for(tmp=sum=x,i=2;tmp>1.0E-5;i++){
t=(i<<1)-1;
sum+=i&1?tmp*=(x*x/t/(t-1)):-(tmp*=(x*x/t/(t-1)));
}
printf("sin(%g°)=%.6f ",xx,sum);
return0;
}
③ C語言根據泰勒公式計算sin(x),
//把b定義為浮點型。
int i=1,b=1;
float x,a,c;double s=0;
//上面兩行改為
int i=1;
float x,a,c,b=1.0;double s=0;
④ c語言,如何用泰勒公式求sinx
//希望我的回答對你的學習有幫助
#include<math.h>
#include<stdio.h>
intmain(){
intn=1,count=1;
floatx;
doublesum,term;
printf("inputx:");
scanf("%f",&x);
sum=x;
term=x;
do{
term=-term*x*x/((n+1)*(n+2));
sum=sum+term;
n=n+2;
count++;
}while(fabs(term)>=1e-5);//這里可以改精度,我給你的是10的-5次方的精度
printf("sin(x)=%g,count=%d ",sum,count);
return0;
}
⑤ 怎樣C語言利用sin冪級數展開求值
C語言利用冪級數展開式求sinx,參考代碼如下:
#include<stdio.h>
#include<math.h>
#define Pi 3.14159265359
int main()
{
double deg[6],x,sum,t,f;
int i,n;
for(i=0;i<6;++i){
f=-1;
n=1;
scanf("%lf",°[i]);
x=deg[i]*Pi/180;
t=sum=x;
while(t>0.00001){
t*=x*x/(2*n)/(2*n+1);
sum+=f*t;
n++;
f=-f;
}
printf("sin%g≈%f\n",deg[i],sum);
printf("sin%g=%f\n",deg[i],sin(x));
}
return 0;
}
⑥ C語言sin怎麼用
C語言sin()用來計算參數x 的正玄值,然後將結果返回。返回-1 至1 之間的計算結果。
例子:
#include <math.h>
main(){
double answer = sin(0.5);
printf("sin(0.5) = %f ", answer);
}
執行
sin(0.5) = 0.479426
C語言sin():
sin()原型:double sin(double x)
sin()角度與弧度:
π=180°
1°=π/180
1(rad)=180/π
角度轉弧度:用角度乘以π/180
弧度轉角度:用弧度乘以180/π,或者用rtod()函數
(6)c語言中如何利用sin的級數計算擴展閱讀:
與sin相似的acos函數
函數名: acos
功 能:計算並返回arccos(x)值、要求-1<=X<=1
函數與形參類型:
double acos(x)
double x;
程序例:
#include <stdio.h>
#include <math.h> int main(void)
{
double result;
double x = 0.5; result = acos(x);
printf("The arc cosine of %lf is %lf ", x, result);
return 0;
}
⑦ C語言中sin()函數用的什麼演算法
sin(x)泰勒公式
可以變在一個 sin(x)=f(x)
f(x)
是一個關於x的加減乘除的函數,極數無限的
當然,極數越多,精度越高,運算量越大
計算機取有限極數,作近似計算即可
⑧ 用C語言程序算sinX的值
程序有幾個問題:
1.long double型數據輸入輸出都要用%lf,而你都用的是%f。
2. if(i=1)此處應該為(x==1)
3.while(pow(x,j)/p<1e-5);此處應該為:pow(x,j)/p>1e-5
目前就發現這么多錯誤,但是答案貌似不對。你再檢查檢查。
⑨ C語言利用泰勒公式,計算sin(x)!!急
第十八行改為:
18:for(n = 1,h = 1;n <= y;n++)
注意,每當h被使用時,要首先初始化。
⑩ 利用泰勒級數編程並計算sin(x)的值,c語言
for循環是針對循環次數確定的情況的,循環條件u>1e-5應用while循環