编写公式:cosx=1-x^2/2!+x^4/4!-x^6/6!+...
展帖快乐!我是今年大一的学生,开始学习C,很喜欢这门功课,希望结识学习编程的各位。
以下是我写的公式,可以运行,但好像错了,帮我读读程序啊^_^
题目是:输入x值,按照下列公式计算cosx的值,知道最后一项小于10的-6次方为止。
cosx=1-x^2/2!+x^4/4!-x^6/6!+...
#include<stdio.h>
#include<conio.h>
#include<math.h>
void main()
{
clrscr();
long int f(int n);
float x,cosx=1,y;
int n,i;
scanf("%f",&x);
for(n=2,i=1;pow(x,n)/f(n))>=pow(10.0,-6);n+=2,i++)
{
y=pow(x,n)/f(n);
y*=pow(-1,i);
cosx+=y;
}
printf("cos%f=%f",x,cosx);
getch();
}
long int f(int n)
{
long int sum=0;
int i,m=1;
for(i=1;i<n;i++)
{
m*=i;
i++;
m*=i;
sum+=m;
}return(sum);
}