前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >如关于 sinx 与 cosx 是用如下两个多项式来近似表达的

如关于 sinx 与 cosx 是用如下两个多项式来近似表达的

作者头像
Java架构师必看
发布2021-04-22 15:17:54
1K0
发布2021-04-22 15:17:54
举报
文章被收录于专栏:Java架构师必看

在数学上对一些复杂的函数,为了便于研究,往往用一些简单的函数来近似表达。常用多项式来近 似表示函数,只需对自变量进行有限次数的加、减、乘、除运算便能求出函数值来。例如关于 sinx 与 cosx 是用如下两个多项式来近似表达的

在这里插入图片描述
在这里插入图片描述

在实际计算时对误差控制的方法是只要余项的绝对值小于一个预定值ε即可,ε可设为 10-5或 10-6等。 请根据题目描述及相关数学知识,编写程序计算 sinx 与 cosx 两个函数在区间[0, 90°]上的任意有一点。

程序设计指导

从程序设计角度来说,本题目主要训练编程者设计函数与运用函数的能力。这里给出 sinx 的计算程 序的编写方法,cosx 可以参考 sinx 的计算方法进行设计。 根据题目的描述可以看出,sinx 是用一个多项式来近似表示的,而多项式中的各项均有规律,其通 项可以用如下公式来表示。

在这里插入图片描述
在这里插入图片描述

假设通项的位置用 i 表示,通项的绝对值用 item 表示,通项的符号用 s 表示且其初值为 1,通项的 累加和用 sum 表示。可以重复下述 4 个步骤,直至通项 item 的值小于一个给定数ε即可解决问题。 (1) 求解通项,将通项的值放在 item 中; (2) 将通项 item 乘以 s 的值累加到 sum 中,即 sum=sum+s*item; (3) 通项的符号 s 变相反数,即 s=-s; (4) 通项的项数加 1,即 i=i+1; 在以上的四个步骤中,最关键的是求通项的值,通项是一个分式,其分子是指数与通项位置数有关 的幂函数 xn,分母是与通项位置数有关的阶乘数 n! 。因此可以将分子与分母分别设计成函数来完成。 3. 代码示例 程序中的指数函数为 double power(double x,int n),求阶乘的函数为 int fact(int n),正弦函数的计算 工作编写在 double my_sin(double x)中。

在这里插入图片描述
在这里插入图片描述

说明:本程序在主函数中调用自定义的正弦函数 my_sin()的同时调用了 C 语言系统的标准正弦函 数,其目的为了与自定义正弦函数做正确性的对比。

在这里插入图片描述
在这里插入图片描述
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
对象存储
对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档