# GÓC SÁNG TẠO > Khu vực lập trình > Visual Basic >  Re: Giúp đỡ về bài toán khử Gauss trên VB6

## minhdo1213

mọi người sửa giúp mình bài toán khử gauss này với.khi mình cho chạy thì nó lại ra sai nghiệm


Dim a(100, 100) As Integer
Dim x(100) As Double
Dim dk, i, j, k, t, m, n As Integer
Dim q, r, ab, abmax, sum As Double

Private Sub cmdnhap_Click()
n = CInt(txtn)
m = n + 1
For i = 1 To n
For j = 1 To m
a(i, j) = InputBox("nhap phan thu" + Str(i) + ";" + Str(j))
kq1.Caption = kq1.Caption + " " + Str(a(i, j))
Next
kq1.Caption = kq1.Caption + Chr(10)
Next
End Sub

Private Sub tinh_Click()
dk = 1
For i = 1 To n - 1
If dk = 1 Then
ab = 0
For k = i To n
max = Abs(a(k, i))
If ab < max Then
ab = max
t = k
End If
Next
If ab = 0 Then
dk = 2
Else
If t <> i Then
For j = i To m
r = a(i, j)
a(i, j) = a(t, j)
a(t, j) = r
Next
q = a(i, i)
For k = i + 1 To n
For j = i + 1 To n
a(k, j) = a(k, j) - a(k, i) * a(i, j) / q
Next
Next
End If
End If
End If
Next
If a(n, n) = 0 Then
dk = 2
Else
x(n) = a(n, m) / a(n, n)
For i = n - 1 To 1
sum = 0
q = a(i, i)
For j = i + 1 To n
sum = sum - a(i, j) * x(j)
Next
x(i) = (sum + a(i, m)) / q
Next
For i = 1 To n
lblkq.Caption = lblkq.Caption + " " + Str(x(i))
Next
End If
If dk = 2 Then
MsgBox ("khu khong qua")
End If

End Sub

----------

