Seite 1 von 1

In einem Array nach einer Zahl suchen

Verfasst: 11.03.2005 17:19
von Leo
Hab ich gerade mal gebraucht :mrgreen:
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