balanc.txt

来自「VB常用数值算法集 内含有解线性代数方程组」· 文本 代码 · 共 42 行

TXT
42
字号
Sub BALANC(A(), N)
    RADIX = 2#
    SQRDX = RADIX ^ 2
1   Last = 1
    For I = 1 To N
        C = 0#
        R = 0#
        For J = 1 To N
            If J <> I Then
                C = C + Abs(A(J, I))
                R = R + Abs(A(I, J))
            End If
        Next J
        If C <> 0# And R <> 0# Then
            G = R / RADIX
            F = 1#
            S = C + R
2               If C < G Then
                F = F * RADIX
                C = C * SQRDX
                GoTo 2
            End If
            G = R * RADIX
3               If C > G Then
                F = F / RADIX
                C = C / SQRDX
                GoTo 3
            End If
            If (C + R) / F < 0.95 * S Then
                Last = 0
                G = 1# / F
                For J = 1 To N
                    A(I, J) = A(I, J) * G
                Next J
                For J = 1 To N
                    A(J, I) = A(J, I) * F
                Next J
            End If
        End If
    Next I
    If Last = 0 Then GoTo 1
End Sub

⌨️ 快捷键说明

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