📄 lescape_m.c
字号:
/* Note:Your choice is C IDE */
#include "stdio.h"
void main()
{
int i;
void Lescape(double a[13],double b[5],int n);
static double a[13]={13.0,12.0,11.0,10.0,9.0,8.0,7.0,
6.0,5.0,4.0,3.0,2.0,1.0};//将三对角矩阵的元素采用一微数组存储
static double b[5]={3.0,0.0,-2.0,6.0,8.0};
Lescape(a,b,5);
for (i=0;i<=4;i++)
printf("x(%d)=%13.7e\n",i,b[i]);
}
void Lescape(double a[13],double b[5],int n)
{
int i,j;
double p[5],q[4],y[5];
p[0]=a[0];
j=1;
for(i=0;i<=n-2;i++)
{
q[i]=a[2*i+j]/p[i];
p[i+1]=a[2*(i+1)+j]-a[2*(i+1)+(j-1)]*q[i];
j=j+1;
}
y[0]=b[0]/p[0];
j=1;
for(i=1;i<=n-1;i++)
{
y[i]=(b[i]-a[(2*i)+(j-1)]*y[i-1])/p[i];
j=j+1;
}
b[n-1]=y[n-1];
for(i=n-2;i>=0;i--)
b[i]=y[i]-q[i]*b[i+1];
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -