计算机上机报告

2019-06-02 15:20

计算方法上机实验报告

上课时间:2014-2015学年秋学期,6~14周

一.拉格朗日插值------------------------------------------------------1

二.牛顿插值------------------------------------------------------------3

三.改进欧拉法---------------------------------------------------------5

四.四阶龙格-库塔-----------------------------------------------------7

五.牛顿迭代------------------------------------------------------------9

六.复化Simpson公式------------------------------------------------11

七.Romberg算法------------------------------------------------------14

八. Seidel迭代法------------------------------------------------------17

九. Gauss列主元消去法----------------------------------------------20

一.拉格朗日插值 1.程序代码

#include void Lagrange() {

int i=0;

double a[10],b[10],L,L1,L2,L3,L4,x; cout<<\

for(i=0;i<4;i++) {

cin>>a[i]; }

cout<<\ for(i=0;i<4;i++) {

cin>>b[i]; }

cout<<\ cin>>x;

L1=(x-a[1])*(x-a[2])*(x-a[3])*b[0]/(a[0]-a[1])/(a[0]-a[2])/(a[0]-a[3]);

L2=(x-a[0])*(x-a[2])*(x-a[3])*b[1]/(a[1]-a[0])/(a[1]-a[2])/(a[1]-a[3]);

L3=(x-a[0])*(x-a[1])*(x-a[3])*b[2]/(a[2]-a[0])/(a[2]-a[1])/(a[2]-a[3]);

L4=(x-a[0])*(x-a[1])*(x-a[2])*b[3]/(a[3]-a[0])/(a[3]-a[1])/(a[3]-a[2]);

L=L1+L2+L3+L4; cout<<\}

void main() {

Lagrange(); cout<

}

2.例子

3.运行结果

二.牛顿插值 1.程序代码

#include #include void main() {

int n,i,j;

double A[50][50],*x,*y; cout<<\请输入插值节点数:\ cin>>n;

x=new double[n]; y=new double[n];

cout<<\请输入这\个插值节点(xi,yi):\ for(i=0;i<=n-1;i++) cin>>x[i]>>y[i]; double K=1,xx,N=0,P; for(i=0;i<=n-1;i++) {

A[i][0]=x[i]; A[i][1]=y[i]; }

for(j=2;j<=n;j++)

for(i=1;i<=n-1;i++) {

A[i][j]=(A[i][j-1]-A[i-1][j-1])/(A[i][0]-A[i-j+1][0]); }

for(i=0;i<=n-1;i++)

cout<<\输出第\阶差商为:\ cout<<\请输入预求值x=\ cin>>xx;

for(i=0;i

K*=xx-x[i];

N+=A[i+1][i+2]*K; P=A[0][1]+N; }

cout<<\插值结果为:y=\ getch(); }


计算机上机报告.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:物化复习题

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: