新网创想网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
x -- 用弧度值输入
创新互联建站成立于2013年,是专业互联网技术服务公司,拥有项目网站制作、成都网站设计网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元贡井做网站,已为上家服务,为贡井各地企业和个人服务,联系电话:13518219792
精度 -- 1E-07
泰勒公式:
cos(x) = 1 - x^2/2! + x^4/4! - x^6/6! ...
程序:
#includestdio.h
#includemath.h
void main(){
double x,term,sum,x2;
int i;
printf("input x in HuDu\n");
scanf("%lf",x);
x2 = x * x;
sum = 1.0;
term = 1.0;
for (i=2;i20;i=i+2){
term = term*x2/(double) (i * (i-1)) * (-1.0);
if (fabs(term) 1.0E-07) break;
sum = sum + term;
}
printf("cos(x)=%lf\n",sum);
}
--------------
算例:
1.570796
cos(x)=0.000000
0.78539
cos(x)=0.707113
3.14159
cos(x)=-1.000000
1、首先在电脑中打开Dev-C++,接着在打开的操作主页面中,写好头函数#include stdio.h#include math.h。
2、然后在打开的C语言窗口中,写好主函数,如下图所示。
3、主要代码如下,在while中判断某一项的绝对值小于10-6为止就PI的近似值。
4、最后如下图所示,运行之后就完成了。
用迭代法求cosx的表达式,可以先将方程x=cosx改写成x=g(x),其中g(x)是一个合适的函数,例如g(x)=0.5*(x+cosx)。然后给定一个初始值x0,用公式xn+1=g(xn)来逐步计算xn的值,直到满足精度要求。下面是一个用C语言实现的例子:
#include stdio.h
#include math.h
#define EPS 1e-6 //定义精度
int main()
{
double x0,x1; //定义迭代变量
x0 = 0; //给定初始值
do
{
x1 = 0.5 * (x0 + cos(x0)); //计算下一个近似值
if(fabs(x1 - x0) EPS) break; //判断是否满足精度要求
x0 = x1; //更新迭代变量
}while(1);
printf("cosx的表达式为:%.6lf\n", x1); //输出结果,保留6位小数
return 0;
}