
Sucht in einem Ein-Dimensionalem Array nach Einem Long.
Code: Alles auswählen
;#######################################################################################
;#######################################################################################
;Procedure FindInLongArray1D
;#######################################################################################
;#######################################################################################
;Sucht nach einer Zahl "num" in einem Array
;Das Array gibt man einfach mit @+ArrayName an.
Procedure FindInLongArray1D(*array,num)
*a.LONG=*array
*a-8
size=*a\l-1
*a+8
For I=0 To size
If *a\l=num
ProcedureReturn I
Else
*a+4
EndIf
Next
ProcedureReturn -1
EndProcedure
;#######################################################################################
;#######################################################################################
;Beispiel
;#######################################################################################
;#######################################################################################
;Array initialisieren
Dim a(20)
;Array mit Zahlen füllen
For I=0 To 20
a(I)=I*5
Next
;Nach 50 im Array suchen
num=FindInLongArray1D(@a(),50)
;Debuggen
If num <> -1
Debug "Eintrags Nummer: "+Str(num)
Debug "Zahl an Eintrags Nummer: "+Str(a(num))
Else
Debug "Kein Eintrag gefunden!"
EndIf
Debug "-----"
;Nach 100 im Array suchen
num=FindInLongArray1D(@a(),100)
;Debuggen
If num <> -1
Debug "Eintrags Nummer: "+Str(num)
Debug "Zahl an Eintrags Nummer: "+Str(a(num))
Else
Debug "Kein Eintrag gefunden!"
EndIf
Debug "-----"
;Nach 100000 im Array suchen
num=FindInLongArray1D(@a(),100000)
;Debuggen
If num <> -1
Debug "Eintrags Nummer: "+Str(num)
Debug "Zahl an Eintrags Nummer: "+Str(a(num))
Else
Debug "Kein Eintrag gefunden!"
EndIf