当前位置:首页 » 编程语言 » c语言中如何利用sin的级数计算
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c语言中如何利用sin的级数计算

发布时间: 2022-03-11 16:36:31

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循环