Скажите в чем проблемма?

Тема в разделе "Visual Basic", создана пользователем DeaDRaiN, 14 май 2010.

  1. DeaDRaiN

    DeaDRaiN Гость

    я тут создал массив а он не заполняет сортированный вроде все правильно а не работает(((

    Код (Text):
    Public Class Form1
    Dim stroc As String 'дополнительная переменная для обмена
    Dim fon As Long, buk As Long 'дополнительные переменные для обмена
    Dim A(0 To 10) As Integer
    Dim j, i, k, p, Box, t, imax As Integer

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    stroc = TextBox1.Text
    TextBox1.Text = TextBox2.Text
    TextBox2.Text = stroc
    End Sub

    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
    TextBox2.BackColor = Color.DarkMagenta
    GroupBox1.BackColor = Color.Gray
    End Sub

    Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
    TextBox2.BackColor = Color.White
    GroupBox1.BackColor = Color.Blue
    End Sub

    Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
    TextBox3.Text = " "
    Randomize()
    ReDim A(0 To 10)
    For i = 1 To 10
    A(i) = Int(101 * Rnd())
    TextBox3.Text = TextBox3.Text + " " + Str(A(i)) 'заполнение массива
    Next i
    End Sub

    Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click
    For t = 1 To 10
    For j = 1 To 9 'организуем 9 просмотров массива
    For i = 1 To 9 ' организуем просмотр массива с 1-го по 9-ый элемент
    If A(i) > A(i + 1) Then
    Call Exchange(i, i + 1) 'вызов процедуры Exchange
    End If
    '  TextBox4.Text = TextBox4.Text + " " + Str(A(i))
    Next i
    ' TextBox4.Text = TextBox4.Text + " " + Str(A(i))
    Next j
    TextBox4.Text = TextBox4.Text + " " + Str(A(i))
    Next t
    End Sub

    Private Sub Button7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button7.Click
    For t = 1 To 10
    For j = 1 To 9 ' организуем 9 просмотров массива
    For i = 1 To 9 ' организуем просмотр массива с 1-го по 9-ый элемент
    Call max() ' вызов процедуры Max
    Next i
    Next j
    TextBox5.Text = TextBox5.Text + " " + Str(A(j))
    Next t
    End Sub

    Private Sub max()
    imax = j
    For i = j To 10
    If A(i) > A(imax) Then
    imax = i
    End If
    Next i
    End Sub

    Private Sub Exchange(ByVal k As Integer, ByVal p As Integer)
    Box = A(k)
    A(k) = A(p)
    A(p) = Box
    End Sub

    Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click
    TextBox3.Clear()
    TextBox4.Clear()
    TextBox5.Clear()
    End Sub
    End Class
    в прикрепленном файле сам проект и там есть exeшник)) помогите пожалуйста!!!
     

    Вложения:

    • ______.rar
      Размер файла:
      56,8 КБ
      Просмотров:
      7
  2. Over

    Over Well-Known Member

    Регистрация:
    4 июл 2007
    Сообщения:
    116
    Симпатии:
    0
    Насколько я помню, когда делаешь ReDim - массив обнуляется, все значения пропадают.
    В твоей ситуации нужно два массива: поочерёдно будешь делать ReDim то первого, то второго, а в другом массиве будут значения, и будешь перебрасывать их из одного в другой после ReDim-а.
     
Загрузка...

Поделиться этой страницей