c语言编程 cos(x)=1-x^2/2!+x^3/3!-x^4/4!+......-x^10/10!
具体题目如下:输入x,按下列公式计算cos(x)的近似值。cos(x)=1-x^2/2!+x^3/3!-x^4/4!+......-x^10/10!...
具体题目如下: 输入x,按下列公式计算cos(x)的近似值。
cos(x)=1-x^2/2!+x^3/3!-x^4/4!+......-x^10/10! 展开
cos(x)=1-x^2/2!+x^3/3!-x^4/4!+......-x^10/10! 展开
7个回答
展开全部
下面是代码 ,我测试过是对的,希望我的努力对你有帮助。
#include <stdio.h>
#include <math.h>
/*求阶乘函数*/
int jiecheng(int n)
{
if(n < 0){
printf("错误的数字\n");
return -1;
}
else if( n == 0 || n== 1){
return 1;
}
else{
return jiecheng(n-1)*n;
}
}
/*自己写的cos 函数*/
double mycos(double x)
{
int i = 2;
double sum = 1.0f;
int k = -1;
while(i<=10){
sum += k*pow(x,i)/jiecheng(i); //pow 是 math.h 里的函数 求x的i次方
k = -k;
i++;
}
return sum;
}
void main()
{
double x = 3.0f;
printf("%d\n",jiecheng(2)); //测试阶乘
printf("%f\n",mycos(x));
printf("%f\n",cos(x)); //库函数里的cos函数 用来对比
}
#include <stdio.h>
#include <math.h>
/*求阶乘函数*/
int jiecheng(int n)
{
if(n < 0){
printf("错误的数字\n");
return -1;
}
else if( n == 0 || n== 1){
return 1;
}
else{
return jiecheng(n-1)*n;
}
}
/*自己写的cos 函数*/
double mycos(double x)
{
int i = 2;
double sum = 1.0f;
int k = -1;
while(i<=10){
sum += k*pow(x,i)/jiecheng(i); //pow 是 math.h 里的函数 求x的i次方
k = -k;
i++;
}
return sum;
}
void main()
{
double x = 3.0f;
printf("%d\n",jiecheng(2)); //测试阶乘
printf("%f\n",mycos(x));
printf("%f\n",cos(x)); //库函数里的cos函数 用来对比
}
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2011-03-30
展开全部
你给的公式是有问题的
#include <stdio.h>
#include <math.h>
void main()
{
double x;
printf("请输入x的值:");
scanf("%lf",&x);
double re = 1;
int flag = -1;
int temp=1;
double tempxx = x;
for (int i=2;i<=10; i++)
{
temp *= i;
tempxx *= x;
re += (flag*tempxx/temp);
flag *= -1;
}
printf("cos(%lf)=%lf\n",x,re);
}
#include <stdio.h>
#include <math.h>
void main()
{
double x;
printf("请输入x的值:");
scanf("%lf",&x);
double re = 1;
int flag = -1;
int temp=1;
double tempxx = x;
for (int i=2;i<=10; i++)
{
temp *= i;
tempxx *= x;
re += (flag*tempxx/temp);
flag *= -1;
}
printf("cos(%lf)=%lf\n",x,re);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
int qiufang(int x, int n) // 求幂
{
int i ;
long int sum = 1;
for(i = 0; i < n; i++) {
sum*=x;
}
return sum;
}
int qiuJiecheng(int n) // 求阶乘
{
int i;
long int sum = 1;
for(i = 1;i <= n; i++) {
sum*=i;
}
return sum;
}
void main()
{
int i;
int x, n = 10;
long int fang ,mi;
float sum = 0;
scanf("%d", &x); // 输入x
for(i = 0; i <= n; i++) { //循环n次,求和
fang = qiufang(x, n); // 分子
mi = qiumi(n); // 分母
if (i %2 == 0) // i为偶数,+
sum += ((float)fang) / ( (float)mi);
else
sum -= ((float)fang) / ( (float)mi);
}
printf("%f",sum);
}
{
int i ;
long int sum = 1;
for(i = 0; i < n; i++) {
sum*=x;
}
return sum;
}
int qiuJiecheng(int n) // 求阶乘
{
int i;
long int sum = 1;
for(i = 1;i <= n; i++) {
sum*=i;
}
return sum;
}
void main()
{
int i;
int x, n = 10;
long int fang ,mi;
float sum = 0;
scanf("%d", &x); // 输入x
for(i = 0; i <= n; i++) { //循环n次,求和
fang = qiufang(x, n); // 分子
mi = qiumi(n); // 分母
if (i %2 == 0) // i为偶数,+
sum += ((float)fang) / ( (float)mi);
else
sum -= ((float)fang) / ( (float)mi);
}
printf("%f",sum);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2011-04-01
展开全部
e=2.71828 18284 59045 23536 02874 71352 66249 77572 47093 69995 95749 66967 62772 40766 30353 54759 45713 82178 52516 64274 27466 39193 20030 59921 81741 35966 29043 57290 03342 95260 59563 07381 32328 62794 34907 63233 82988 07531 95251 01901 15738 34187 93070 21540 89149 93488 41675 09244 76146 06680 82264 80016 84774 11853 74234 54424 37107 53907 77449 92069 55170 27618 38606 26133 13845 83000 75204 49338 26560 29760 67371 13200 70932 87091 27443 74704 72306 96977 20931 01416 92836 81902 55151 08657 46377 21112 52389 78442 50569 53696 77078 54499 69967 94686 44549 05987 93163 68892 30098 79312 77361 78215 42499 92295 76351 48220 82698 95193 66803 31825 28869 39849 64651 05820 93923 98294 88793 32036 25094 43117 30123 81970 68416 14039 70198 37679 32068 32823 76464 80429 53118 02328 78250 98194 55815 30175 67173 61332 06981 12509 96181 88159 30416 90351 59888 85193 45807 27386 67385 89422 87922 84998 92086 80582 57492 79610 48419 84443 63463 24496 84875 60233 62482 70419 78623 20900 21609 90235 30436 99418 49146 31409 34317 38143 64054 62531 52096 18369 08887 07016 76839 64243 78140 59271 45635 49061 30310 72085 10383 75051 01157 47704 17189 86106 87396 96552 12671 54688 95703 50354 02123 40784 98193 34321 06817 01210 05627 88023 51930 33224 74501 58539 04730 41995 77770 93503 66041 69973 29725 08868 76966 40355 57071 62268 44716 25607 98826 51787 13419 51246 65201 03059 21236 67719 43252 78675 39855 89448 96970 96409 75459 18569 56380 23637 01621 12047 74272 28364 89613 42251 64450 78182 44235 29486 36372 14174 02388 93441 24796 35743 70263 75529 44483 37998 01612 54922 78509 25778 25620 92622 64832 62779 33386 56648 16277 25164 01910 59004 91644 99828 93150 56604 72580 27786 31864 15519 56532 44258 69829 46959 30801 91529 87211 72556 34754 63964 47910 14590 40905 86298 49679 12874 06870 50489 58586 71747 98546 67757 57320 56812 88459 20541 33405 39220 00113 78630 09455 60688 16674 00169 84205 58040 33637 95376 45203 04024 32256 61352 78369 51177 88386 38744 39662 53224 98506 54995 88623 42818 99707 73327 61717 83928 03494 65014 34558 89707 19425 86398 77275 47109 62953 74152 11151 36835 06275 26023 26484 72870 39207 64310 05958 41166 12054 52970 30236 47254 92966 69381 15137 32275 36450 98889 03136 02057 24817 65851 18063 03644 28123 14965 50704 75102 54465 01172 72115 55194 86685 08003 68532 28183 15219 60037 35625 27944 95158 28418 82947 87610 85263 98139
另外,站长团上有产品团购,便宜有保证
另外,站长团上有产品团购,便宜有保证
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include <math.h>
long factorial(int x)
{
long r=1;
int i=0;
for(i=2;i<=x;++i)
{
r*=i;
}
return r;
}
double mycos(double x)
{
int i=0;
double r=1;
for(i=2;i<=10;++i)
{
if(i%2)
r+=pow(x,i)/factorial(i);
else
r-=pow(x,i)/factorial(i);
}
return r;
}
long factorial(int x)
{
long r=1;
int i=0;
for(i=2;i<=x;++i)
{
r*=i;
}
return r;
}
double mycos(double x)
{
int i=0;
double r=1;
for(i=2;i<=10;++i)
{
if(i%2)
r+=pow(x,i)/factorial(i);
else
r-=pow(x,i)/factorial(i);
}
return r;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询