一次方程组求解程序 山东 王清华 1993-10-15 程序清单如下: 10 INPUT"一次方程组未知数个数n(n>0)=",N 20 DIM X(N),A(N,N+1) 30 PRINT"输入各系数(inputAm,m):" 40 FOR I=1 TO N: FOR J=1 TO N+1 50 PRINT"a"+STR$(I)+","+STR$(J);: INPUT"=",A(I,J) 60 NEXT:PRINT:NEXT 70 FOR I=1 TO N:FOR J=1 TO N:MM=A(J,I) 80 IF I=J THEN GOTO 100 90 FOR K=1 TO N+1:A(J,K)=A(J,K)-A(I,K)MM/A(I,I):NEXTK 100 NEXTJ,I 110 PRINT"方程组解为(roots):" 120 FOR I=1 TO N:X(I)=A(I,N+1)/A(I,I) 130 PRINT"X"+STR$(I)+"="+STR$(X(I)) 140 NEXTI:END 运行此程序,提示: 一次方程组未知数个数n(n>0)= 在此输入方程组个数,即方程组元数n(要求n>0),回车。 接下来提示: 输入各系数(inputAm,m): 此处要求输入各未知数的系数:Am,m(m=1,2,…,n+1),包括常数项:Am,n+1。 在 解 方 程 组 以 前 , 先 把 方 程 组 化 成 如 下 格 式 : A1,1X1+A1,2X2+…+A1,nXn=A1,n+1 A2,1X1+A2,2X2+…+A2,nXn=A2,n+1 … … An,1X1+An,2X2+…+An,nXn=An,n+1 分别输入以上各系数(每输入一个都要回车),即可得各未知数的解。 此程序的设计利用解方程组中的加减消元法,分别用第m(m=1,2,…,n)个方程式去消去其他方程式的Xm(m=1,2,…,n)未知数,最终化为如下形式: B1,1X1=B1,n+1 … … Bn,nXn=Bn,n+1 然后就可求出每个未知数的值。 (山东 王清华)