Ergebnis 1 bis 4 von 4

Thema: VisualBasic - Integerdivision

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1

    VisualBasic - Integerdivision

    Ich dividiere mit VB zwei Zahlen, bsp. 297/256. Ergebnis ist 1, nicht 1,16. Ich brauche aber gerade letzteres Ergebnis und in einem anderen Projekt, wo der Code fast identisch ist von der Logik her (auch zwei Integers die dividiert werden), klappt es auch. Warum hier nicht?

  2. #2
    Ich kenne mich mit VB jetzt zwar nicht aus.
    Aber in C und Java ist es so, das mindestens einer der Dividenten vom Typ double/flaot sein muss damit aus der Integer- eine Double-Division wird.

    Das heißt falls es beides Variablen sind einen Wert umcasten und bei ner Zahl ist einfach direkt ein .0 hinten anhängen.

    Code:
    int var1 = 2;
    int var2 = 4;
    double var3;
    var3 = var1 / (double) var2;
    var3 = var1 / 2.0;

    Geändert von Xardas der Dunkle (08.06.2009 um 19:50 Uhr)

  3. #3
    Ich denke, in VB6 würde man das am besten machen, indem man eine der Variablen als Float (bin mir nicht sicher, ob VB6 Double kannte) deklariert. Unter VB.NET habe ich keine Ahnung; das ist eine komplett andere Sprache.

  4. #4
    Keine Ahnung weshalb du Integer Variablen für eine Division nimmst.

    Decimal:
    14 bytes +/-79 228 162 514 264 337 593 543 950 335 ohne Dezimalpunkt;
    +/-7,9228162514264337593543950335 mit 28 Stellen vor dem Komma; die kleinste Nicht-Null-Zahl ist +/-0,0000000000000000000000000001

    Double:
    (double-precision floating-point) 8 bytes -1,79769313486232E308 bis -4,94065645841247E-324 für negative Werte;
    4,94065645841247E-324 bis 1,79769313486232E308 für positive Werte

    Single:
    (single-precision floating-point) 4 bytes -3,402823E38 bis -1,401298E-45 für negative Werte;
    1,401298E-45 bis 3,402823E38 für positive Werte

    Integer:
    2 bytes -32 768 to 32 767

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •