ich möchte ein fun konsolenprogramm schreiben nur funktioniert es nicht ich möchte mit file von if und elseif überprüfen ob das was der user eingibt genau 5 Ziffern hat nur wenn ich es ausprobiere und 6 Ziffern eingebe steht da gar nichts und wenn ich 5 eingebe steht da nur 5 Ziffern eingeben und wenn ich nach einem eintippen nochmal etwas eintippen möchte schliest sich das programm hier der code :
Module Module1
Sub Main()
Console.WriteLine("Wie heisen sie?")
Dim name As String
name = Console.ReadLine()
Console.WriteLine("ich möchte sie begrüßen" + " " + (name))
Console.WriteLine("Sie sprechen mit dem Computer des MI6")
Console.WriteLine("Bitte teilen sie uns Ihre 5 Zählige Agent ID mit")
Dim zufireden As Boolean = False
Dim ID As Integer
ID = Console.ReadLine()
If ID >= 5 Then
Console.WriteLine("Bitte nur 5 Ziffern")
ElseIf ID < 5 Then
Console.WriteLine("Bitte geben sie 5 Ziffern ein!")
ElseIf ID = 5 Then
Console.WriteLine("Ihr Vorgang wird bearbeitet!")
End If
Console.ReadLine()
End Sub
End Module _________________
ClisClis Newbie
Anmeldedatum: 15.09.2010 Beiträge: 2
Verfasst am: 15.09.2010, 21:04
ich weiss nicht, was in der zeile mit
If ID >= 5 Then
Console.WriteLine("Bitte nur 5 Ziffern")
das = zu suchen hat
christopher.g Überflieger
Anmeldedatum: 03.05.2008 Beiträge: 534
Verfasst am: 16.09.2010, 06:03
hi
der fehler ist folgender...
dur prüfst ob in der Variable "ID" der wert 5 ist
und nicht ob der wert in der varaiablen die länge 5 hat
also...
nicht
Code:
if ID = "5"
sondern
Code:
if len(ID) = 5 then
'vorgang wird bearbeitet
else
'bitte geben sie ihre korrekte ID ein
endif
aja nochwas GANZ WICHTIG
wenn du sowas machst solltest du die Variable ID nicht als integer deklarieren
warum?:
Integer hat die obergrenze mit 32767
das heist sobald du eine ID eingibst die größer ist -> Fehler (Überlauf)
weiters
wenn du z.b. die ID 02983 eingibst
-> ID = 2983
klar?!
nimm Dim ID as String
dann hast die ganzen probleme nicht