Ansicht von 9 Beiträgen - 1 bis 9 (von insgesamt 9)
  • Autor
    Beiträge
  • #1917

    shady
    Teilnehmer

    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
    Shady

    #7990

    whitenexx
    Teilnehmer

    Ich 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
    }
    #7991

    tokyopunk
    Teilnehmer

    lä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.

    #7992

    shady
    Teilnehmer

    @ whitenexx

    Habe ich auch shcon probiert funktioniert leider nicht.

    @strubbl

    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

    #7993

    nasenbaer
    Teilnehmer

    Gibt 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

    #7994

    whitenexx
    Teilnehmer
    shady 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.

    #7995

    shady
    Teilnehmer

    aso,
    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…

    #7996

    tokyopunk
    Teilnehmer

    also 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.

    #7997

    shady
    Teilnehmer

    Soooo,
    das isNumeric war der knackpunkt habs nun hinbekommen das der nicht mehr aschmiert und nur noch zahlen zulässt.
    Danke für eure Hilfe.

Ansicht von 9 Beiträgen - 1 bis 9 (von insgesamt 9)

Du musst angemeldet sein, um auf dieses Thema antworten zu können.