Seite 1 von 3
Arrays
Verfasst: 20.02.2006 21:11
von gulp
Ich habe auf einem Flohmarkt für 5€ ne Toposversion in die Finger gekriegt und möcht jetzt ein kleines Spiel programmieren.
Nun bin ich bei der folgenden Stelle zwar nicht hängen geblieben, möchte
aber etwas anderst machen.
Viel geredet nun zur Frage:
Ich habe mehrere Arrays mit je 10 Einträgen die zusammen gehören. Nun
möchte ich die Variable XYZ mit einem Wert von 0-9 belegen. Je nachdem möchte ich dann von jeder Array den Eintrag XYZ abrufen.
Wie geht das?
Hoffe Ihr blickt durch

Verfasst: 20.02.2006 21:19
von roherter
ich weiß jetzt nicht genau was du meinst ich schreib mal was ausm stehgreif:
Code: Alles auswählen
Dim xyz.l(10)
for a=0 to 9
xyz(a)=a
next a
Messagerequester("feldinhalt",str(xyz(2)));-zeigt Eintag 2 im messagerequester an
Verfasst: 20.02.2006 21:27
von gulp
dann hack ich dass einfach mal auseinander
1. wie erstelle ich eine Zufallszahl von 0-9
2. wenn ich z.b. der Variable YXZ den Wert 2 zuweise will ich von meiner Array die 2. Variable abrufen. denn mach ich XYZ = 5 und will dann die 5. Variable abrufen.
Hoffe dass ist verständlicher.

Verfasst: 20.02.2006 21:50
von roherter
nicht wircklich aber zufallzahlen machste so:
Verfasst: 20.02.2006 21:57
von gulp
ok, versuch nr.3
wenn ich eine Array abrufen will tu ich dass so Array(1),
nun will ich aber eine bestimmte Variable abrufen deren Stelle ich in der Variable XYZ gespeichert hab.
so in der Art Array(XYZ).
geht dass?
Verfasst: 20.02.2006 22:04
von Toshy
Ich habe es auch noch nich verstaden, aber ich denke du willst wissen wie man ArrayVariablen schreibt und ausliest. Im Grunde geschieht dies Beiden auf die selbe Art
XYZ(5) = 555 ;
; zum auseinanderhalten habe ich mal unterschiedliche Werte genommen.
; in das sechste (6te) Element des Array wir der Wert 555 geschrieben.
; sechste Element, weil Arrays mit dem Element 0 (NULL) beginnen.
;XYZ(0) -> 1. Element
;XYZ(1) -> 2. Element
;XYZ(2) -> 3. Element
;XYZ(3) -> 4. Element
;XYZ(4) -> 5. Element
;XYZ(5) -> 6. Element
; Willst du nun das sechste Element auslesen geht das mit z.B.
a= XYZ(5)
; also einfach nur "umdrehen". Auf der linken Seite steht immer die Variable die geändert werden soll.
ich hoffe das war es was du meinst.
[edit]
Du liest ein Array nicht zwangweise mit Array(1) aus.
Der Wert IN der Klammer ist die Nummer des Elements (1) ist also das zweite Element (Erklärung siehe oben).
VOR der Klammer steht der Name des Arrays.
Dim Array.l(41)
bedeutet das du zum Beispiel mit Array(1) oder Array(33) Daten an position 2 bzw. 34 ausliest /schreibst.
Dim XYZ.l(41)
bedeutet das du zum Beispiel mit XYZ(1) oder XYZ(33) Daten an position 2 bzw. 34 ausliest /schreibst.
Gruß
Toshy
Verfasst: 20.02.2006 22:10
von gulp
Nein genau dieses Array(
5)
will ich von einer Variable bestimmen lassen sodass
wenn XYZ=5 lese Array(5)
wenn XYZ=6 lese Array(6)
wenn XYZ=2 lese Array(2)
usw.
so jetzt ist es hoffentlich verständlich
Verfasst: 20.02.2006 22:13
von roherter
Meinst du vielleicht ein Mehrdimensionales Array???
Verfasst: 20.02.2006 22:18
von gulp
nein,
vielleicht kann mir ja jemand ein gutes tut zu arrays empfehlen, dann kann ich es mir selbst erarbeiten

.
Verfasst: 20.02.2006 22:19
von Toshy
Nein, also verständlich ist das nicht.
Meine Erklärung oben ist zwar richtig, aber ich vermute ich weiß was du willst.
Code: Alles auswählen
Dim Array.l(10)
for a=1 to 9
Array(a)=a
next a
; Es wurden 10 Elemente erstellt, aber nur Elemente 1-9 gefüllt
XYZ= 5 ; in Variable XYZ steht der Wert 5
b.l= Array(XYZ) ; in Variable b wird der Inhalt des ArrayElement mit
; Nummer XYZ geschrieben, also b = 5
Das wir sein was du willst.
Messagerequester("feldinhalt",str(b));-zeigt Eintag 2 im messagerequester an
[edit]
tut?
Tut Tut, töff töff, hub hub?
Hast du es mit der Eisenbahn?
Schreib doch bitte komplette Sätze.
Meinst du Tutorial? Dann nimm die Purebasic hilfe, da ist alles gut erklärt.
Verstehen muß man es schon selber