c 利用泰勒级数计算sinx的值
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/10 20:37:39
clear;clc;x=1;s=0;y=atan(x);fori=1:1e6n=2*i-1;s=s+(-(-1)^i)*(x^n)/n;err=y-s;ifabs(err)
symstf=sin(t);ft=taylor(f,300);ezplot(f)holdonx=-2*pi:0.1:2*pi;plot(x,subs(ft,x),'.r');
(arctanx)'=1/(1+x^2)=1-x^2+x^4-...arctanx=x-x^3/3+x^5/5-x^7/7+.π/4=arctan1=1-1/3+1/5-1/7+...(arcsinx
sinx=x-x^3/3!+x^5/5!-x^7/7!+.f(x)=x^4-x^6/3!+x^8/5!-x^10/7!+...f(x)的6阶导数=-6!/3!=-120
//用sinx=x-x^3/3!+x^5/5!……+(-1)^(n-1)*(x^(2*n-1)/(2*n-1)!#include#includedoublepower(doublex,intn){if
#include#includevoidmain(){longfloatx,s=0;intn,i,k,a=1,b;printf("Inputx,n:");scanf("%lf,%d",&x,&n);f
第十八行改为:\x09\x0918:for(n=1,h=1;n再问:对!这是一个问题,先谢过。不过我照这样改了之后,还是有问题,输入3,正确应是0.4几,我的输出确实-0.3几,愁死了再答:经过调试,
那是用了夹逼定理啊.因为那个|x-x0|^(n+1)/(n+1)!的极限是0且0再问:我是不明白|x-x0|^(n+1)/(n+1)!的极限为什么是0?再答:对于某一个顶点x处,|x-x0|是个常数,
#include <stdio.h>#include <math.h>int jiecheng(int n){\x09int
他是开始设一个函数F(X)=ao+a1x+a2x^2+a3x^3+a4x^4……+anx^n……现在要求出系数a0a1a2a3a4……an……要球a0只要x=0的时候有F(0)=a0求a1只要对F(X
f(x)=f(0)+f'(x_0)(x-x0)x+f''(x0)(x-x0)^2/2!+f''(x0)(x-x0)^3/3!+.+f^(n)(x0)(x-x0)^n/n!+.
scanf("%f",&x);这儿改成scanf("%lf",&x);x是double类型变量,scanf的格式是%lf输出的时候也一样再问:改了,没用再答:#include <std
首先,我们知道sin(x)=sin(x+k*2pi),那么,我们首先去x1=x%2pi.这样做的目的,是为了让表达式在精度要求范围内,尽可能的有比较少的项.然后循环累加,跳出循环的条件是最后一项的值小
这个只能说与sinx的展开式有关sinx=x-x^3/6+x^5/(5!)-x^7/(7!)+x^9/(9!)+.所以第四项是O(x^7).这样写成第一个o(x^6)相对要精确点.但是按照皮亚诺余项定
#include#includevoidmain(){doubleterm=1.0,e=1.0,eps=1e-05;inti=0;printf("inputeps1e-05:\n");scanf("%
#include <stdio.h>int main(void){ int n; &nbs
clear;clc; syms x a;m=5;%自己改y=(11/6-3*x+3/2*x^2-1/3*x^3)^af=taylor(y,m+1,x); w=s
第一问:把sinx也按泰勒公式展开,带进去,如sinx展开为四项,sinx^2展开为两项,后面的依次为一项,一项,将上述带进去再加总...大于x^4的都不要第二问:相加等于小的那个字母,这是公式o(x
我给你发
就是用sinx/cosxsinx只有x的奇数次幂,正负相间cosx只有x的偶数次幂,正负相间感觉没什么好的记忆方法吧多看就熟了吧最好还是掌握推理的方法比较稳固