Пример: Транспортная логистика
Я ищу:
На главную  |  Добавить в избранное  

Информатика /

Матрица - в VB

←предыдущая следующая→  
1 2 

txtN.Enabled = False

txtM.Enabled = False

Dim i As Integer, j As Integer

Dim t As Integer, n As Integer, m As Integer

n = Val(txtN.Text)

m = Val(txtM.Text)

ReDim a(n, m) As Integer

ReDim x(n, m) As Integer

Randomize Timer

txtOriginal.Text = Empty

For i = 1 To n

For j = 1 To m

a(i, j) = Int(Rnd * 90) + 10

txtOriginal.Text = txtOriginal.Text & Str(a(i, j)) & " "

Next j

txtOriginal.Text = txtOriginal.Text & vbCrLf

Next i

ReDim vPos(m) As Integer, pos(m) As Integer

Dim tmp As Integer

For j = 1 To m

pos(j) = j

vPos(j) = a(1, j)

For i = 2 To n

If a(i, j) < vPos(j) Then vPos(j) = a(i, j)

Next i

Next j

For t = 1 To m

For i = 1 To m - 1

If vPos(i) < vPos(i + 1) Then

tmp = vPos(i)

vPos(i) = vPos(i + 1)

vPos(i + 1) = tmp

tmp = pos(i)

pos(i) = pos(i + 1)

pos(i + 1) = tmp

End If

Next i

Next t

txtResult.Text = Empty

For i = 1 To n

For j = 1 To m

x(i, j) = a(i, pos(j))

txtResult.Text = txtResult.Text & Str(x(i, j)) & " "

Next j

txtResult.Text = txtResult.Text & vbCrLf

Next i

cmdPrint.Enabled = True

cmdSave.Enabled = True

End Sub

Private Sub cmdSave_Click()

On Error GoTo Err_Lbl:

Open App.Path & "Result.txt" For Output As #1

Print #1, "Задание №7" & vbCrLf & vbCrLf

Print #1, "Случайная матрица:" & vbCrLf

Print #1, txtOriginal.Text & vbCrLf

Print #1, "Полученная матрица:" & vbCrLf

Print #1, txtResult.Text

Close #1

Exit Sub

Err_Lbl:

MsgBox "Произошла ошибка записи", vbCritical, "Внимание"

End Sub

Private Sub txtM_Change()

txtN_Change

End Sub

Private Sub txtM_KeyPress(KeyAscii As Integer)

If KeyAscii < 26 Then Exit Sub

If Not IsNumeric(Chr(KeyAscii)) Then KeyAscii = 0

End Sub

Private Sub txtN_Change()

If Val(txtN.Text) > 8 Or Val(txtN.Text) = 0 Or Val(txtM.Text) > 8 Or Val(txtM.Text) = 0 Then

cmdRun.Enabled = False

Else

cmdRun.Enabled = True

End If

End Sub

Private Sub txtN_KeyPress(KeyAscii As Integer)

If KeyAscii < 26 Then Exit Sub

If Not IsNumeric(Chr(KeyAscii)) Then KeyAscii = 0

End Sub

Внешний вид приложения:

Результат работы приложения:


←предыдущая следующая→  
1 2 



Copyright © 2005—2007 «Mark5»