Zahl auf Nachkommastellen prüfen

  • VB.NET

Es gibt 14 Antworten in diesem Thema. Der letzte Beitrag () ist von picoflop.

    Zahl auf Nachkommastellen prüfen

    Hallo Leute,
    Ich will überprüfen ob eine Zahl nachkommastellen enthält, also zum Beispiel

    VB.NET-Quellcode

    1. If zahl hat nachkommastellen Then
    2. msgbox ("Hat Nachkommastellen")
    3. ElseIf zahl hat nachkommastellen = False Then
    4. msgbox ("Keine Nachkommastellen")
    5. End If

    Ich hab schon gegoogelt und nichts brauchbares gefunden. :|
    mit Math.Round...der erste Parameter ist die Zahl, welche gerundet werden soll und der zweite auf wie viel Nachkommastellen(in deinem Fall 0)
    Ich wollte auch mal ne total überflüssige Signatur:
    ---Leer---
    Danke für die schnelle Antwort :thumbup:
    Trotzdem hab ich noch mal ein Problem. Das ist jetzt mein Code:

    VB.NET-Quellcode

    1. If Math.Round(ergebnis, 0) = ergebnis Then
    2. MsgBox(ergebnis)
    3. ElseIf (ergebnis = Math.Round(ergebnis, 0)) = False Then
    4. GoTo anfang
    5. End If

    Trotzdem kommen noch zahlen mit nachkommastellen, sie werden in der msgBox nur gerundet
    dargestellt :?:

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „TheoTechnic“ ()

    @ jvbsl
    Danke, jetzt hab ich meinen Fehler begriffen:
    Ich programmiere nämlich ein Prog, das einem Rechenaufgaben stellt. In meinem Fall, Division, muss noch überprüft werden, ob das Ergebnis nachkommastellen enthält. Da ich das zwischengespeicherte Ergebnis aber als Integer deklariert habe, rundet es (wahrscheinlich) automatisch beim zuweisen der Kommazahl . Daher ist das Ergebnis bei der Nachkommastellenabfrage schon gerundet und die Aufgabe wird als richtig (ohne nachkommastellen) erkannt. Bsp:

    Es kommt die Aufgabe 54 / 4 Das Ergebnis ( 13.5) wird in der Variable "ergebnis" as Integer abgespeichert und Jetzt kommt der Fehler: Automatisch gerundet. Jetzt kommt die abfrage auf Nachkommastellen. Dort wird das (jetzt gerundete) ergebnis auf nachkommastellen überprüft. Da es durch die Rundung jetzt aber keine mehr hat, wird die Aufgabe fälschlicherweise als Richtig erkannt.

    Für alle , dies jetzt nicht verstanden haben: Was ich im moment nur noch brauche, ist ein Datentyp, der mind. 1 Nachkommastelle akzeptiert

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „TheoTechnic“ ()