-
AutorBeiträge
-
27. Januar 2009 um 18:00 #1917shadyTeilnehmer
Hallo,
leider muss ich für meine Ausbildung Visual Basic lernen und kenne mich deswegen noch nicht so gut damit aus.
Mein Problem ist, das wir ein Programm schreiben sollten was 2 zahlen vergleicht und dir größte ausgibt. Ist ja alles nicht die welt, jedoch möchte ich es noch etwas verfeiner und es nicht zum abstürtzten bringen. Den sobald keine zahl sondern ein Buchstabe eingeben wird hängt es sich auf, da nur INTEGERs verglichen werden können. Wie kriege ich das hin, das wenn ich buchstaben vergeleichen möchte das Programm mir eine warnung gibt und nicht abstürtzt, sondern mit klick auf JA/Nein wieder zurück geht.MFG
Shady27. Januar 2009 um 22:01 #7990whitenexxTeilnehmerIch weiß nicht wie das in Visual Basic genau gehen soll, aber ich würde es mal mit einer Fallunterscheidung probieren, also if und else. Gegebenfalls auch try und catch benutzen, wenns sowas in Visual Basic gibt. Was bekommst du denn für ne Fehlermeldung? Kommt die Meldung beim ausführen oder schon beim kompilieren? Steht da was von Exception?
Im MSDN sollte es doch sicherlich eine Funktions-Doku geben, die prüfen und vergleichen von/mit unterschiedlichen Datentypen beschreibt.
Also ich würde das mit if und else probieren, also sowas in der Art:
Code:if(eingabe == Integer) {
//TODO
} else {
//ERRORMESSAGE
}27. Januar 2009 um 22:19 #7991tokyopunkTeilnehmerläuft dein vb unter ubuntu?
ja, du musst dich mal schlau machen, wie man überprüfen kann, ob die eingabe ein integer ist. und wenn nicht, dann muss die eingabe so lange wiederholt werden, bis ein integer eingegeben wird.
aber wie das in vb realisiert wird mit dem test auf integer weiß ich nicht.28. Januar 2009 um 13:52 #7992shadyTeilnehmer@ whitenexx
Habe ich auch shcon probiert funktioniert leider nicht.
Die Intger sind ja richtig da ich ja zahlen vergleichen möchte, will nur einen absturtz verhidnern wenn eienr ausversehen buchstaben vergleicht.
Der Absurtz/aushänger kommt erst nachdem man der vergleich starten möchte.Naja werde mal weiter rum probieren
28. Januar 2009 um 15:10 #7993nasenbaerTeilnehmerGibt es vllt. sowas wie „is_alpha“, wie in C?
Ich hab grad wenig Zeit, aber halt sowas: http://www.codeguru.com/forum/archive/index.php/t-221693.html
28. Januar 2009 um 19:45 #7994whitenexxTeilnehmershady wrote:Die Intger sind ja richtig da ich ja zahlen vergleichen möchte, will nur einen absturtz verhidnern wenn eienr ausversehen buchstaben vergleicht.
Der Absurtz/aushänger kommt erst nachdem man der vergleich starten möchte.Nein sind sie nicht, das meinte Strubbl ja. Sobald du keinen Integer übergibst bekommst du ne Exception oder Runtime Error. Ist ja auch kein Wunder, immerhin hast du noch keine Fallunterscheidung in deinem Programm. Wie gesagt, Eingaben zuerst auf Datentyp überprüfen und dann per Fallunterscheidung entscheiden was passieren soll.
28. Januar 2009 um 20:49 #7995shadyTeilnehmeraso,
okay da habe ich ihn falsch verstanden.So vom Prinzip habe ich mir das auch geacht jedoch weiß ich halt nicht wie ich das realisieren soll…
28. Januar 2009 um 22:07 #7996tokyopunkTeilnehmeralso ein anfang wäre die isNumeric funktion: http://msdn.microsoft.com/en-us/library/6cd3f6w1.aspx
einfach mal selber googlen. denn findste bestimmt noch mehr. weil ich weiß nich, ob bei dir alle numerischen zahlen oder nur integer’s erlaubt sein sollen.
29. Januar 2009 um 20:13 #7997shadyTeilnehmerSoooo,
das isNumeric war der knackpunkt habs nun hinbekommen das der nicht mehr aschmiert und nur noch zahlen zulässt.
Danke für eure Hilfe. -
AutorBeiträge
- Du musst angemeldet sein, um auf dieses Thema antworten zu können.