| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 6828 人关注过本帖
标题:输入精度e,用下列公式求cos x的近似值,精确到最后一项的绝对值少于e,要求 ...
只看楼主 加入收藏
可能是
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2017-12-13
结帖率:0
收藏
已结贴  问题点数:20 回复次数:5 
输入精度e,用下列公式求cos x的近似值,精确到最后一项的绝对值少于e,要求求x的n次方以及求阶乘都用函数实现,程序需要使用中断点来调试。 Cos x=x0/

输入精度e,用下列公式求cos x的近似值,精确到最后一项的绝对值少于e,要求求x的n次方以及求阶乘都用函数实现,程序需要使用中断点来调试。

Cos x=x0/0!-x2/2!+x4/4!-x6/6!+…

 

要求:

  (1)在程序内部添加必要的注释(至少3处);

  (2)输入输出要有文字说明。

  (3)main主函数尽可能只有函数调用语句。

  (4)实验分析要全面,要有调试的截图及分析。

求帮忙
 

搜索更多相关主题的帖子: 输入 Cos 要求 函数 调试 
2017-12-13 17:13
GBH1
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:5
帖 子:112
专家分:510
注 册:2017-6-13
收藏
得分:7 
加入#include<math.h>   #include<stdio.h>
程序代码:
int jieCheng(int n){//求分母
    long sum = 1;
    int i = 1;
    if(n==0)return 1;
    while(i<=n){
        sum*=i;
       i++; 

    }
    return sum;
}

double Cosin(double x,double e){
  double result = 0;
  int i=0;
  while(true){
    double k = pow(x,i)/jieCheng(2*i);计算当前精度
    int flag = (i%2==0)?1:-1; //奇偶项
    if(k>e){
        result += flag*k;
        i++;   

    }else{
     break;       

    } 

  }
  return result;
}
int main()
{
   printf("%lf",Cosin(1,0.0000001));
   getchar();
    return 0;
}

2017-12-13 17:56
九转星河
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:长长久久
等 级:贵宾
威 望:52
帖 子:5023
专家分:14003
注 册:2016-10-22
收藏
得分:7 
回复 2楼 GBH1
实现方法没啥问题,不过话说阶乘不需要考虑溢出处理么~

[code]/*~个性签名:bug是什么意思?bug是看上去没有可能的东西实际上是有可能做到的 就是这样~2018-08-08更~*/[/code]
2017-12-13 18:00
GBH1
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:5
帖 子:112
专家分:510
注 册:2017-6-13
收藏
得分:0 
楼上正解,是我疏忽了。随手写的,没考虑太多

2017-12-13 20:21
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9024
专家分:54030
注 册:2011-1-18
收藏
得分:7 
程序代码:
double Cos( double x, double epsilon )
{
    double r=1, item=1;
    for( int i=1; item>epsilon; ++i )
    {
        item *= x*x/(2*i)/(2*i-1);
        r += item*(1-i%2*2);
    }
    return r;
}
2017-12-14 08:40
zzr19990909
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2020-4-21
收藏
得分:0 
回复 2楼 GBH1
请问下,代码中间那段,while(true)中的true是什么啊,我运行的时候这个点之前没定义,运行不了
2020-04-21 10:51
快速回复:输入精度e,用下列公式求cos x的近似值,精确到最后一项的绝对值少于e ...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.224993 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved