CrazyFreddy
Mitglied
Hallo allerseits!
Ich habe mir vor kurzem die Express Version von VB2005 heruntergeladen, und wollte als absoluter Programmieranfänger (dank dem Ebook unter der "Tutorial" Sektion) mein erstes Eingabe Programm basteln.
Es sollte ein einfacher Rechner sein, zuerst die Variablen einlesen und dann durch das gewünschte Rechnungsverfahren ausgeben.
Das funktioniert auch wunderbar, bis auf die Zeile
If strOp <> "*" Or "+" Or "-" Or "/" Then Console.WriteLine("Das ist nicht erlaubt!")
Was ich mit dem Code sagen will ist das der User NUR die 4 Grundrechnungsarten eingeben kann und kein "p" oder "q"....
Falls dass der Fall ist sollte das Programm einen Text ausgeben.
Leider kann der Compiler damit nichts anfangen obwohl in der Entwicklerumgebung auch kein Fehler angegeben wird.
Es ist mit Sicherheit nur ein kleines Problem, komme aber einfach nicht drauf warum die Anweisung nicht funktionieren will, hier der vollständige Code:
(Bitte greift euch nicht am Kopf weil Sachen umständlich und hässlich geschrieben sind)
------------------------------------------------------------Start---------------------------------------------------------------
Module Module1
Sub Main()
Start:
Dim intVar1 As Integer
Dim intVar2 As Integer
Dim strOp As String
Console.WriteLine("Bitte Zahl Nummer eins eingeben: ")
intvar1 = Console.ReadLine()
Console.WriteLine("Bitte Zahl Nummer zwei eingeben: ")
intvar2 = Console.ReadLine()
Console.WriteLine("Was wollen Sie mit den Ziffern tun?")
Console.WriteLine("Geben Sie hier '*' für Mal, '+' für Plus '-' für Minus und '/' für Dividieren an")
strOp = Console.ReadLine()
If strOp <> "*" Or "+" Or "-" Or "/" Then Console.WriteLine("Das ist nicht erlaubt!") Else GoTo weiter
Console.WriteLine(ControlChars.NewLine)
GoTo Start
Weiter:
If strOp = "*" Then Console.WriteLine("Das Ergebnis ist: {0}", intVar1 * intVar2)
If strOp = "+" Then Console.WriteLine("Das Ergebnis ist: {0}", intVar1 + intVar2)
If strOp = "-" Then Console.WriteLine("Das Ergebnis ist: {0}", intVar1 - intVar2)
If strOp = "/" Then Console.WriteLine("Das Ergebnis ist: {0}", intVar1 / intVar2)
Console.WriteLine(ControlChars.NewLine)
GoTo Start
End Sub
End Module
------------------------------------------------------------Ende---------------------------------------------------------------
Helft mir bitte auf die Sprünge!
Falls Ihr noch Anregungen loswerden wollt, bitte ich euch diese loszuwerden, schließlich will ich etwas dabei lernen!
Danke!
Fred
Edit:
Fehler gefunden habe vergessen die Variablen einzugeben:
Richtig ist
If strOp <> "*" And strOp <> "+" And strOp <> "-" And strOp <> "/" Then
Ich habe mir vor kurzem die Express Version von VB2005 heruntergeladen, und wollte als absoluter Programmieranfänger (dank dem Ebook unter der "Tutorial" Sektion) mein erstes Eingabe Programm basteln.
Es sollte ein einfacher Rechner sein, zuerst die Variablen einlesen und dann durch das gewünschte Rechnungsverfahren ausgeben.
Das funktioniert auch wunderbar, bis auf die Zeile
If strOp <> "*" Or "+" Or "-" Or "/" Then Console.WriteLine("Das ist nicht erlaubt!")
Was ich mit dem Code sagen will ist das der User NUR die 4 Grundrechnungsarten eingeben kann und kein "p" oder "q"....
Falls dass der Fall ist sollte das Programm einen Text ausgeben.
Leider kann der Compiler damit nichts anfangen obwohl in der Entwicklerumgebung auch kein Fehler angegeben wird.
Es ist mit Sicherheit nur ein kleines Problem, komme aber einfach nicht drauf warum die Anweisung nicht funktionieren will, hier der vollständige Code:
(Bitte greift euch nicht am Kopf weil Sachen umständlich und hässlich geschrieben sind)
------------------------------------------------------------Start---------------------------------------------------------------
Module Module1
Sub Main()
Start:
Dim intVar1 As Integer
Dim intVar2 As Integer
Dim strOp As String
Console.WriteLine("Bitte Zahl Nummer eins eingeben: ")
intvar1 = Console.ReadLine()
Console.WriteLine("Bitte Zahl Nummer zwei eingeben: ")
intvar2 = Console.ReadLine()
Console.WriteLine("Was wollen Sie mit den Ziffern tun?")
Console.WriteLine("Geben Sie hier '*' für Mal, '+' für Plus '-' für Minus und '/' für Dividieren an")
strOp = Console.ReadLine()
If strOp <> "*" Or "+" Or "-" Or "/" Then Console.WriteLine("Das ist nicht erlaubt!") Else GoTo weiter
Console.WriteLine(ControlChars.NewLine)
GoTo Start
Weiter:
If strOp = "*" Then Console.WriteLine("Das Ergebnis ist: {0}", intVar1 * intVar2)
If strOp = "+" Then Console.WriteLine("Das Ergebnis ist: {0}", intVar1 + intVar2)
If strOp = "-" Then Console.WriteLine("Das Ergebnis ist: {0}", intVar1 - intVar2)
If strOp = "/" Then Console.WriteLine("Das Ergebnis ist: {0}", intVar1 / intVar2)
Console.WriteLine(ControlChars.NewLine)
GoTo Start
End Sub
End Module
------------------------------------------------------------Ende---------------------------------------------------------------
Helft mir bitte auf die Sprünge!
Falls Ihr noch Anregungen loswerden wollt, bitte ich euch diese loszuwerden, schließlich will ich etwas dabei lernen!
Danke!
Fred
Edit:
Fehler gefunden habe vergessen die Variablen einzugeben:
Richtig ist
If strOp <> "*" And strOp <> "+" And strOp <> "-" And strOp <> "/" Then
Zuletzt bearbeitet: