浙大版《C语言程序设计(第3版)》题目集 习题5-7 使用函数求余弦函数的近似值

时间:2022-07-24
本文章向大家介绍浙大版《C语言程序设计(第3版)》题目集 习题5-7 使用函数求余弦函数的近似值,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

习题5-7 使用函数求余弦函数的近似值

本题要求实现一个函数,用下列公式求cos(x)的近似值,精确到最后一项的绝对值小于e:cos(x)=x0 /0!−x​2 /2!+x4 /4!−x6 /6!+⋯

函数接口定义:

double funcos( double e, double x );

其中用户传入的参数为误差上限e和自变量x;函数funcos应返回用给定公式计算出来、并且满足误差要求的cos(x)的近似值。输入输出均在双精度范围内。

裁判测试程序样例:

#include <stdio.h>
#include <math.h>

double funcos( double e, double x );

int main()
{    
    double e, x;

    scanf("%lf %lf", &e, &x);
    printf("cos(%.2f) = %.6fn", x, funcos(e, x));

    return 0;
}

/* 你的代码将被嵌在这里 */

输入样例:

0.01 -3.14

输出样例:

cos(-3.14) = -0.999899

代码:

double funcos( double e, double x )
{
    int i,j;
    double temp1;
    double temp2;
    double temp;
    double sum=0;
    int l=1;
    for(i=0;;i+=2)
    {
        if(i==0)
        {
           temp=1.0;
        }
        else
        {
            temp1=1;
            temp2=1;
            for(j=1;j<=i;j++)
            {
                temp1*=x;
                temp2*=j;
            }
            temp=temp1/temp2;
        }
          sum+=(temp*l);
        if(temp<e) break;

        l=-l;

    }
    return sum;
}