German wie geht das mit dem runden ???

Discussion in 'German Forum' started by Bobbes, Oct 24, 2007.

  1. Bobbes

    Bobbes Active Member Licensed User

    ich versteh das mit dem runden einfach nicht.

    in der Hilfe -Datei steht :
    Returns a rounded number from a number with a specified number of digits.
    Default number of digits is 0.
    Syntax: Round (Number [,Number of digits])
    Example: Msgbox (Round (4.8))
    Result: Displays 5

    Gut und wie schreib ich das jetzt für eine textbox??

    textbox1.text (round(0.0))
    textbox1 round (0.0)

    oder wie ?

    danke im voraus

    Bobbes
     
  2. specci48

    specci48 Well-Known Member Licensed User

    Hallo Bobbes,

    der Round Befehl rundet den ersten Wert in der Klammer und zwar auf so viele stellen, wie Du ggf. im zweiten Wert der Klammer angegeben hast. Beispiel:

    a = 3.1271
    Label1.Text = Round(a) ergibt 3
    Label1.Text = Round(a,2) ergibt 3.13

    Aber Achtung:
    Es wird nicht kaufmännisch korrekt gerundet!!!
    D.h., a = 4.5 mit Label1.Text = Round(a) ergibt 4 (statt 5),
    Beim kaufmännischen Grenzwert wird (wie in vielen anderen Programmierspachen auch, z.B. Java) ab- statt aufgerundet.

    specci48
     
  3. Bobbes

    Bobbes Active Member Licensed User

    funtzt, auch hier wieder vielen dank

    Gruß Bobbes
     
  4. klaus

    klaus Expert Licensed User

    Round Funktion

    Hallo,
    Das verhalten der Round Funktion hat mich verwundert. Ich war sicher dass
    Round(4.5,0) 5 geben sollte.
    Die Format Funktion rundet wie 'gewohnt'.
    Formet(4.5,"N0") gibt 5

    Ich das Problem dem Autor von Basic4ppc im englischen Forum unterbreitet.
    Werden sehen was er antwortet.
    http://www.basic4ppc.com/forum/showthread.php?t=1159

    Beiliegend, ein Beispiel zum ausprobieren.

    Klaus
    Switzerland
     
  5. klaus

    klaus Expert Licensed User

    Die Antwort von Erel dem Basic4ppc Autor

    http://www.basic4ppc.com/forum/showthread.php?t=1159

    Basic4ppc uses the .Net Framework Round function.
    Here is a quote from .Net documentation that explains this behavior:

    Quote:
    Return Value

    The whole number nearest a. If a is halfway between two whole numbers, one of which by definition is even and the other odd, then the even number is returned.
    Remarks

    The behavior of this method follows IEEE Standard 754, section 4. This kind of rounding is sometimes called rounding to nearest, or banker's rounding.

    Basic4ppc nützt die .Net Round Funktion
    Die .Net Unterlagen beschreiben die Funktion wie folgend:
    Der zurückgegebener Wert ist die ganze der am nähesten ist, wenn zwei zahlen gleich nahe sind gibt es eine gerade und eine ungerade Zahl, die gerade Zahl wird zurückgegeben.
    Dies entspricht der IEEE 754 Norm.

    Klaus
     
Loading...