Hallo!
Ich bin leider kein VB Genie, brauche eure Hilfe.
Ich schreibe morgen eine Klausur und steht grad total auf dem Schlauch...
Es geht um ein Programm, dass Zufallszahlen nach verschiedenen Algorithmen sortieren soll (Bubble, Insert, Selection).
Zunächst übergibt eine Funktion ein Array mit Zufallszahlen.
Nun möchte ich dieses Feld mit der Funktion "bubblesort" sortieren und anschließend ausgeben.
Quellcode:
Option Explicit
Private Function zufallszahlen(ByVal ANZ As Integer) As Integer()
Dim i As Integer
Dim zahlen() As Integer
ReDim Preserve zahlen(ANZ)
For i = 0 To ANZ Step 1
zahlen(i) = Int((100 * Rnd) + 1)
Next i
zufallszahlen = zahlen()
End Function
Private Sub cmdErzeugen_Click()
Dim anzahl As Integer
Dim i As Integer
Dim zufall() As Integer
Dim bubbleFeld() As Integer
anzahl = CInt(txtAnz.Text)
lstZufall.Clear
lstBubble.Clear
ReDim Preserve zufall(anzahl)
ReDim Preserve bubbleFeld(anzahl)
zufall() = zufallszahlen(anzahl)
bubbleFeld() = bubblesort(zufall(), anzahl)
For i = 1 To anzahl Step 1
lstZufall.AddItem zufall(i)
Next i
End Sub
Private Sub Form_Load()
Randomize
End Sub
Private Function bubblesort(ByRef zahlen() As Integer, ByVal ANZ As Integer) As Integer
Dim i As Integer
Dim j As Integer
Dim temp As Integer
For i = 0 To UBound(zahlen()) Step 1
For j = 0 To UBound(zahlen()) Step 1
If zahlen(j) > zahlen(j + 1) Then
temp = zahlen(j)
zahlen(j) = zahlen(j + 1)
zahlen(j + 1) = temp
End If
Next j
Next i
bubblesort = zahlen()
End Function
Nun bekomme ich immer folgende Fehlermeldung:
"Keine Zuweisung an array möglich!"
Gemeint ist die rot markierte Zeile.
Das erzeugen und ausgeben der Zufallszahlen hat funktioniert.
Bitte helft mir, wenn's geht schnell...hab noch so viel zu tun und ich komme nicht weiter
Gruß,
Doenes
Tut mir Leid...ich muss das Thema pushen...
Ich bin leider kein VB Genie, brauche eure Hilfe.
Ich schreibe morgen eine Klausur und steht grad total auf dem Schlauch...
Es geht um ein Programm, dass Zufallszahlen nach verschiedenen Algorithmen sortieren soll (Bubble, Insert, Selection).
Zunächst übergibt eine Funktion ein Array mit Zufallszahlen.
Nun möchte ich dieses Feld mit der Funktion "bubblesort" sortieren und anschließend ausgeben.
Quellcode:
Option Explicit
Private Function zufallszahlen(ByVal ANZ As Integer) As Integer()
Dim i As Integer
Dim zahlen() As Integer
ReDim Preserve zahlen(ANZ)
For i = 0 To ANZ Step 1
zahlen(i) = Int((100 * Rnd) + 1)
Next i
zufallszahlen = zahlen()
End Function
Private Sub cmdErzeugen_Click()
Dim anzahl As Integer
Dim i As Integer
Dim zufall() As Integer
Dim bubbleFeld() As Integer
anzahl = CInt(txtAnz.Text)
lstZufall.Clear
lstBubble.Clear
ReDim Preserve zufall(anzahl)
ReDim Preserve bubbleFeld(anzahl)
zufall() = zufallszahlen(anzahl)
bubbleFeld() = bubblesort(zufall(), anzahl)
For i = 1 To anzahl Step 1
lstZufall.AddItem zufall(i)
Next i
End Sub
Private Sub Form_Load()
Randomize
End Sub
Private Function bubblesort(ByRef zahlen() As Integer, ByVal ANZ As Integer) As Integer
Dim i As Integer
Dim j As Integer
Dim temp As Integer
For i = 0 To UBound(zahlen()) Step 1
For j = 0 To UBound(zahlen()) Step 1
If zahlen(j) > zahlen(j + 1) Then
temp = zahlen(j)
zahlen(j) = zahlen(j + 1)
zahlen(j + 1) = temp
End If
Next j
Next i
bubblesort = zahlen()
End Function
Nun bekomme ich immer folgende Fehlermeldung:
"Keine Zuweisung an array möglich!"
Gemeint ist die rot markierte Zeile.
Das erzeugen und ausgeben der Zufallszahlen hat funktioniert.
Bitte helft mir, wenn's geht schnell...hab noch so viel zu tun und ich komme nicht weiter
Gruß,
Doenes
Ergänzung ()
Tut mir Leid...ich muss das Thema pushen...