Arrays

Anfängerfragen zum Programmieren mit PureBasic.
gulp
Beiträge: 29
Registriert: 20.02.2006 21:00

Arrays

Beitrag 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 :lol:
mfg gulp
Benutzeravatar
roherter
Beiträge: 1407
Registriert: 10.04.2005 18:58
Kontaktdaten:

Beitrag 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
Purebasic 5.0 32bit und 64 bit

I'm back from hell
gulp
Beiträge: 29
Registriert: 20.02.2006 21:00

Beitrag von gulp »

dann hack ich dass einfach mal auseinander 8)

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. :freak:
mfg gulp
Benutzeravatar
roherter
Beiträge: 1407
Registriert: 10.04.2005 18:58
Kontaktdaten:

Beitrag von roherter »

nicht wircklich aber zufallzahlen machste so:

Code: Alles auswählen

erg=random(9)
Purebasic 5.0 32bit und 64 bit

I'm back from hell
gulp
Beiträge: 29
Registriert: 20.02.2006 21:00

Beitrag 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?
mfg gulp
Toshy
Beiträge: 713
Registriert: 22.03.2005 00:29
Computerausstattung: Computer und Strom vorhanden
Wohnort: LK Wolfenbüttel

Beitrag 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
1. Win10
PB6.1
gulp
Beiträge: 29
Registriert: 20.02.2006 21:00

Beitrag von gulp »

:lol: :lol: :lol:

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
mfg gulp
Benutzeravatar
roherter
Beiträge: 1407
Registriert: 10.04.2005 18:58
Kontaktdaten:

Beitrag von roherter »

Meinst du vielleicht ein Mehrdimensionales Array???
Purebasic 5.0 32bit und 64 bit

I'm back from hell
gulp
Beiträge: 29
Registriert: 20.02.2006 21:00

Beitrag von gulp »

nein,
vielleicht kann mir ja jemand ein gutes tut zu arrays empfehlen, dann kann ich es mir selbst erarbeiten :lol: .
mfg gulp
Toshy
Beiträge: 713
Registriert: 22.03.2005 00:29
Computerausstattung: Computer und Strom vorhanden
Wohnort: LK Wolfenbüttel

Beitrag 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
1. Win10
PB6.1
Antworten