Moin moin.
Bevor hier wieder große Aufschreie kommen, weil ich Option Strict auf OFF habe: Ich studiere Maschinenbau und keine Informatik. In unserer Verlesung zu Hochsprachenprogrammierung hat man es uns ohne Option Strict auf ON gezeigt. Ich würde es auch selbst mit Option Strict ON machen, habe aber nicht die Zeit mich damit auseinander zu setzen. Denn Hoschsprachenprogrammierung ist nicht das einzige Fach mit dem ich mich beschäftigen muss und bei weitem auch nicht das wichtigste. Also bitte tut mir den gefallen und seht über Option Strict einfach mal hinweg.
Erstmal ein Ausschnitt meines Quellcodes:
Der Teil des Programms macht folgendes:
Es werden 2 Werte (Position und Kraft) eingelesen und auf fortlaufenden Variablen abgelegt. Zuvor wird überprüft, ob die Werte nummerisch und positiv sind und keinen "." enthalten.
Das ist aber noch nicht alles: Mein Problem betrifft nun die Zeilen 12-18
Es soll zusätzlich überprüft werden, ob der erste Wert (Position) schonmal eingegeben wurde, bevor er auf der nächsten Variablen gespeichert wird.
Jetzt komme ich aber nicht weiter. Denn wenn der Wert tatsächlich schonmal eingegeben wurde, soll wieder angefangen werden eine Eingabe zu fordern. Ich will also aus der If-Abfrage in den oberen Teil meines Quellcodes zurückspringen (wie ich mit dem Kommentar angedeutet habe). Geht das überhaupt? Und wenn ja, wie?
Bevor hier wieder große Aufschreie kommen, weil ich Option Strict auf OFF habe: Ich studiere Maschinenbau und keine Informatik. In unserer Verlesung zu Hochsprachenprogrammierung hat man es uns ohne Option Strict auf ON gezeigt. Ich würde es auch selbst mit Option Strict ON machen, habe aber nicht die Zeit mich damit auseinander zu setzen. Denn Hoschsprachenprogrammierung ist nicht das einzige Fach mit dem ich mich beschäftigen muss und bei weitem auch nicht das wichtigste. Also bitte tut mir den gefallen und seht über Option Strict einfach mal hinweg.
Erstmal ein Ausschnitt meines Quellcodes:
VB.NET-Quellcode
- Do
- Do
- Do ' Einlesen Positionen und Kontrolle auf richtige Eingabe
- Console.Write(iAnzahlPositionen + 1 & ". Position eingeben: ")
- strEingabe = Console.ReadLine()
- Loop Until IsNumeric(strEingabe) And Not strEingabe.Contains(".") Or strEingabe = "e"
- If strEingabe = "e" Then
- Exit Do
- End If
- Loop Until strEingabe > 0
- dEingabe = strEingabe
- For z As Integer = 0 To dPosition.Length - 1
- If dEingabe = dPosition(z) Then
- Console.Write("Position ist bereits belegt!")
- ' Springe zurück in die Schleife, in der zur Eingabe aufgefordert wird. Also die mit Console.Write(iAnzahlPositionen + 1 & ". Position eingeben: ")
- End If
- Next
- If strEingabe = "e" Then
- Exit Do
- End If
- If dPosition.Length = iAnzahlPositionen Then
- ReDim Preserve dPosition(dPosition.Length)
- ReDim Preserve dKraft(dKraft.Length)
- End If
- dPosition(iAnzahlPositionen) = strEingabe
- Do
- Do ' Einlesen Kräfte und Kontrolle auf richtige Eingabe
- Console.Write(iAnzahlPositionen + 1 & ". Kraft eingeben: ")
- strEingabe = Console.ReadLine()
- Loop Until IsNumeric(strEingabe) And Not strEingabe.Contains(".")
- Loop Until strEingabe > 0
- dKraft(iAnzahlPositionen) = strEingabe
- iAnzahlPositionen += 1
- Loop
Der Teil des Programms macht folgendes:
Es werden 2 Werte (Position und Kraft) eingelesen und auf fortlaufenden Variablen abgelegt. Zuvor wird überprüft, ob die Werte nummerisch und positiv sind und keinen "." enthalten.
Das ist aber noch nicht alles: Mein Problem betrifft nun die Zeilen 12-18
Es soll zusätzlich überprüft werden, ob der erste Wert (Position) schonmal eingegeben wurde, bevor er auf der nächsten Variablen gespeichert wird.
Jetzt komme ich aber nicht weiter. Denn wenn der Wert tatsächlich schonmal eingegeben wurde, soll wieder angefangen werden eine Eingabe zu fordern. Ich will also aus der If-Abfrage in den oberen Teil meines Quellcodes zurückspringen (wie ich mit dem Kommentar angedeutet habe). Geht das überhaupt? Und wenn ja, wie?
Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „ElBarto“ () aus folgendem Grund: Versehentlich vor Fertigstellung gepostet