📄
字号:
#include<iostream.h>#include<math.h>//确定要计算的角度值#define N 0.57891//利用宏定义二次插值函数#define L(a) (a-x_1)*(a-x_2)*y_0/((x_0-x_1)*(x_0-x_2))+(a-x_0)*(a-x_2)*y_1/((x_1-x_0)*(x_1-x_2))+(a-x_0)*(a-x_1)*y_2/((x_2-x_0)*(x_2-x_1))//利用宏定义函数,该函数用以将插值范围减小#define X(M,n) int(M*pow(10,n)/10)/pow(10,n-1)void main(){ double x_0=0.4,x_1=0.5,x_2=0.6,y_0=0.38942,y_1=0.47943,y_2=0.56464,temp=N,temp1; for(int i=3;i<=6;i++) { temp1=X(temp,i); y_1=L(temp1); if(i==6) break; x_0=x_1; y_0=y_1; x_1=X(temp,i); } //输出运算结果 cout<<"经用二次插值法计算知sin(0.57891)的近似值为:"<<y_1<<endl; //输出截断误差限 cout<<"截断误差限为:"<<cos(x_0)*(fabs((N-x_0)*(N-x_1)*(N-x_2)))/(3*2*1)<<endl;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -