⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 111.txt

📁 解线性方程组的软件源代码。用于求解线性方程组
💻 TXT
字号:
这里有几个小程序的代码。
一。线性方程组的解
Dim Const g_MaxNum As Long = 300  
Dim A(g_MaxNum, g_MaxNum) as double
Dim B(g_MaxNum) as double
    Dim c as double
Sub GS1(m)
for  k=1 To m-1
for I=k+1 To m
   C=a(I,k)/a(k,k)
   for j=k+1 to m
        A(I,J)=a(I,J)-c *A(k,J)
Next j
b(i)=b(i)-b(k)*c
      Next I
   Next K
 End Sub
Subroutine CY1(m)
for i=m To 1 step -1
C=0
for k=i +1,m
    c=c+a(i,k) *b(k)
     next k
     B(i)=(B(i)-c)/a(I,I)
   Next i
End Sub

Sub  Main()
Open a.dat For Input As #1
Open a.out For Output As #2
Input #1,M
For I=1 to m
  For j=1 to m
Input #1,a(I,j)
Next j
Next I
For I=1 to m
  Input #1,b(i)
Next i
Call gs1(m)
Call cy1(m)
For I=1 to m
   Write #2,b(i)
Next i
Close(1)
Close(2)
end





二 。列主元消去法
Sub GS4(M)
For k=1 to m-1
   C=0.0
For I=K to M
   If ABS(A(I,K)>ABS(C) THEN
      C=A(I,K)
      I0=I
   ENDIF
      Next i
IF I0=K THEN GOTO 30
For J=K to M
   T=A(K,J)
   A(K,J)=A(I0,J)
   A(I0,J)=T
      Next j
T=B(K)
B(K)=B(I0)
B(I0)=T
   30:
      for I=K+1 to M
   C=A(I,K)/a(K,K)
   for j=k+1 to m
        A(I,J)=a(I,J)-C*A(K,J)
          Next j
B(I)=B(I)-B(K)*C
     Next i
Next k
END sub

三.	列主元消去法求逆
    Sub InvZuQu(M As Integer)
    Dim L1(5, 5) As Double
    Dim L2(5, 5) As Double
    Dim TT As Double
       For I = 1 To M
            For J = 1 To M
                If (I = J) Then
                     L1(I, J) = 1#
                Else
                     L1(I, J) = 0#
                End If
            Next J
        Next I
        For k = 1 To M
            For L = k To M
                If (Abs(A(k, k)) < Abs(A(L, k))) Then
                    For M = 1 To M
                        t = A(k, M)
                        A(k, M) = A(L, M)
                        TT = L1(k, M)
                        L1(k, M) = L1(L, M)
                        L1(L, M) = TT
                        A(L, M) = t
                    Next M
                End If
            Next L
            For I = 1 To M
                If I < k Or I > k Then
                    L2(I, k) = A(I, k) / A(k, k)
                    For J = 1 To M
                        A(I, J) = A(I, J) - L2(I, k) * A(k, J)
                        L1(I, J) = L1(I, J) - L2(I, k) * L1(k, J)
                    Next J
                End If
            Next I
        Next k
        For I = 1 To M
            For J = 1 To M
                L1(I, J) = L1(I, J) / A(I, I)
            Next J
        Next I
        For I = 1 To M
            For J = 1 To M
                A(I, J) = L1(I, J)
            Next J
        Next I
End Sub
        

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -