重庆分公司,新征程启航

为企业提供网站建设、域名注册、服务器等服务

用c语言求余弦函数弧长 c语言余弦值函数

用c语言程序编写用下面中间公式方法求正弦和余弦的方法 并定义为函数 在main里面调用

#include stdio.h

创新互联主要从事做网站、网站设计、网页设计、企业做网站、公司建网站等业务。立足成都服务赤峰林西,十载网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18982081108

#include math.h

#define P 3.1415927

double sinx(double x) {

double eps = 1E-8,delta = x;

double sgn = -1,sin = x,n = 1;

double nator = 1;

while(fabs(delta)  eps) {

nator *= (n + 1.0)*(n + 2.0);

delta *= x*x/nator;

sin += sgn*delta;

sgn = -sgn;

n += 2;

}

return sin;

}

double cosx(double x) {

double eps = 1E-8,delta = 1;

double sgn = -1,cos = 1,n = 1;

double nator = 1;

while(fabs(delta)  eps) {

nator *= n*(n + 1.0);

delta *= x*x/nator;

cos = cos + sgn*delta;

sgn = -sgn;

n += 2;

}

return cos;

}

int main() {

double alpha;

int T;

printf("测试次数:");

scanf("%d",T);

while(T--) {

printf("请输入度数:");

scanf("%lf",alpha);

alpha *= P/180;

printf("msin(%lf) = %lf\n",alpha,sinx(alpha));

printf("sin(%lf) = %lf\n",alpha,sin(alpha));//调用系统函数用于对比

printf("mcos(%lf) = %lf\n",alpha,cosx(alpha));

printf("cos(%lf) = %lf\n",alpha,cos(alpha));//调用系统函数用于对比

}

return 0;

}

C语言(C++) 自己编写求余弦值的程序。

#includestdio.h

#define

pi

3.14159265

//pi定义

double

mypow(double,int);

//自定义指数函数

int

mult(int);

//阶乘函数

double

mysin(double);

//sin函数

double

mycos(double);

//cos函数

double

mypow(double

x,int

n)

{

int

i;

double

result=1;

if(n0)

for(i=1;i=n;i++)

result*=x;

return

result;

}

int

mult(int

n)

{

int

i;

int

result=1;

if(n0)

for(i=1;i=n;i++)

result*=i;

return

result;

}

double

mysin(double

x)

{

int

flag=1;//标志正负

int

i;

double

result=0;

while(x=2*pi)

x-=2*pi;

while(x0)

x+=2*pi;

if(xpi)

{

x=2*pi-x;

flag=-flag;

}

if(xpi/2)

//将任意弧度转化到[0,pi/2]

x=pi-x;

if(xpi/4)

//[pi/4,pi/2]调用cosX在[0,pi/4]求解,减少误差

return

flag*mycos(pi/2-x);

for(i=0;i10;i++)//taylor展开

{

result+=((double)1)*mypow(x,2*i+1)*mypow(-1,i)/mult(2*i+1);

}

return

flag*result;

}

double

mycos(double

x)//与sin函数过程类似

{

int

flag=1;

int

i;

double

result=0;

while(x=2*pi)

x-=2*pi;

while(x0)

x+=2*pi;

if(x1.5*pi)

x=2*pi-x;

if(xpi/2

x=pi)

{

x=pi-x;

flag=-flag;

}

if(xpi

x=1.5*pi)

{

x-=pi;

flag=-flag;

}

if(xpi/4)

return

flag*mysin(pi/2-x);

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

{

result+=((double)1)*mypow(x,2*i)*mypow(-1,i)/mult(2*i);

}

return

flag*result;

}

int

main()//测试程序

{

int

x;

while(1)

{

scanf("%d",x);//可以输入任意一个角度(角度制),-1终止程序

printf("cosx=%lf\n",mycos(x*pi/180));//转换成弧度,再调用前面的函数。

printf("sinx=%lf\n",mysin(x*pi/180));

if(x==-1)

break;

}

return

0;

}

C语言求余弦

#includestdio.h

#includemath.h

main()

{

int x,n;

scanf("%d",n);

x=n;

printf("%.4f",cos(x));

getch();

}

如何用C语言中专门的数学算法实现正弦,余弦函数的计算

头文件包含。math.h

cos

:余弦函数

函数原型:double

cos(double

x);

头文件:#includemath.h

是否是标准函数:是

函数功能:求x的余弦值,这里,x为弧度。

返回值:计算结果的双精度值。

例程如下:

求cosx。

#include

stdio.h

#include

math.h

int

main(void)

{

double

result;

double

x

=

M_PI;

result

=

cos(x);

printf("cos(PI)

is

%lf\n",

result);

return

0;

}

sin:正弦函数

函数原型:double

sin(double

x);

头文件:#includemath.h

是否是标准函数:是

函数功能:求x的正弦值,这里,x为弧度。

返回值:计算结果的双精度值。

例程如下:

求sinx。

#include

stdio.h

#include

math.h

int

main(void)

{

float

x;

x=M_PI/2;

printf("sin(PI/2)=%f",sin(x));

getchar();

return

0;

}


本文标题:用c语言求余弦函数弧长 c语言余弦值函数
文章分享:http://cqcxhl.com/article/hhpodg.html

其他资讯

在线咨询
服务热线
服务热线:028-86922220
TOP