_ArraySort numerisch

  • hallo gemeinde, :hammer:

    klein berti ist mal wieder zu dumm.
    Ich versuche gerade mein kleines Array abwaerts zu sortieren.

    Bsp:

    #include <Array.au3>

    $array[0] = 61
    $array[1] = 197.87
    $array[2] = 0
    $array[3] = 72.15

    _ArrayDisplay($array,"$array")

    _ArraySort($array, 1, 1)

    _ArrayDisplay($array,"num $array sort desk")

    Ergebnis bei mir ist nicht 197.87, 72.15, 61, 0
    ,sondern 72.15, 61, 197.87, 0


    Ojeoje, hat jemand eine Lösung ?
    Gruss @Berti

  • hallo mega,

    erst mal vielen Dank. Dein Script klappt.

    Mein Problem:
    ich hab nicht $array[1] = 197.87, sondern
    $array[0] = $wert0 ($wert1 = "197,87")

    also ein String und keine Zahl. Hier die Lösung: :keks:

    #include <Array.au3>
    Dim $array[4], $i
    $array[0] = "61"
    $array[1] = "197.87"
    $array[2] = "0"
    $array[3] = "72.15"

    _ArrayDisplay($array, "$array")
    _ArraySort($array, 1, 0)
    _ArrayDisplay($array, "string $array sort desk")

    ;String umwandeln in Zahl
    For $i = 0 To 3 Step 1
    $array[$i] = Number($array[$i])
    Next

    _ArraySort($array, 1, 0)
    _ArrayDisplay($array, "num $array sort desk")


    Viel Spass noch...
    @Berti