SORTARRAY, wo kommt die Null her?

Previous topic - Next topic

Worebu

Hallo, da ich keine Antwort auf meine Frage wegen ZOOMSPRITE erhalten habe (hat sich aber erledigt), kommt eine neue.
Ich generiere 5 Zahlen:


Code (glbasic) Select

FOR i=1 TO 6
   wuerfel[i] = RND(5)+1
NEXT


logischerweise ist keine Null dabei, weil ja RND(5)+1.

Nu aber kommt SORTARRAY wuerfel[],0 ins Spiel und schon habe ich beim ersten Wurf 3x die Null dabei, IMMER, aber  nur beim ersten mal.

Kann das mal jemand nachstellen und mir sagen das das nicht an mir liegt. so sieht das aus.
Code (glbasic) Select

IF wurf = FALSE
FOR i=1 TO 6
wuerfel[i] = RND(5)+1
NEXT
wurf = TRUE
ENDIF

SORTARRAY wuerfel[], 0

FOR i=1 TO 5
ZOOMSPRITE wuerfel[i],320+200*i,865,2,2
NEXT



Intel I5 9600 - RTX 4070, WaKü, 32GB RAM, 1x 512gb + 1x 1Gb NVRAM,  1x4TB + 1x1TB HD

Qedo

for six number:

   DIM wuerfel[6]
   IF wurf = FALSE
      FOR i=0 TO 5
         wuerfel = RND(5)+1
      NEXT
      wurf = TRUE
   ENDIF
   SORTARRAY wuerfel[], 0
   FOR i=0 TO 5
      ZOOMSPRITE wuerfel,320+200*i,865,2,2
   NEXT
   END

Worebu

Ja genau, das habe ich geschrieben und das funzt nicht
Intel I5 9600 - RTX 4070, WaKü, 32GB RAM, 1x 512gb + 1x 1Gb NVRAM,  1x4TB + 1x1TB HD

Qedo


Kitty Hello

DIM macht immer ein Feld das auch
  • beinhaltet. Wenn Du das sortierst, aber nur bei [1] bis [6] Werte ablegst, sortiert er den 0er von
  • mit rein. :)

Worebu

Also kommt die Null nicht von RND sondern von SORTARRAY?
Intel I5 9600 - RTX 4070, WaKü, 32GB RAM, 1x 512gb + 1x 1Gb NVRAM,  1x4TB + 1x1TB HD

Kitty Hello

die kommt von
DIM x[2]; // x[0]=0
x[1] = 1; // jetzt ist immer noch x[0]=0

Worebu

kann ich nicht sagen das SORTARRAY bei 1 anfängt zu sortieren?
Intel I5 9600 - RTX 4070, WaKü, 32GB RAM, 1x 512gb + 1x 1Gb NVRAM,  1x4TB + 1x1TB HD

Kitty Hello

Nein. Das sortiert immer alle Daten. Aber gewöhne Dir doch bitte an auch den Index 0 zu verwenden :)

Worebu

Danke für die Antwort. Das mit dem Index 0 sollte ich wohl machen.
Intel I5 9600 - RTX 4070, WaKü, 32GB RAM, 1x 512gb + 1x 1Gb NVRAM,  1x4TB + 1x1TB HD