PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Variablen raussuchen



MarleyJam
19.09.2008, 10:36
Heii Leute,
ich habe ein kleines Problem mit den Variablen (mal wieder).
Ich möchte, dass aus 9 Variablen eine herausgesucht wird, diese darf jedoch nicht eine von 3 vorher ausgewählten Variablen sein.

Beispiel:
V0004 hat den Wert 1 (wurde vorher ausgewählt)
V0005 hat den Wert 2
V0006 hat den Wert 3
V0007 hat den Wert 4
V0008 hat den Wert 5 (wurde vorher ausgewählt)
V0009 hat den Wert 6
V0010 hat den Wert 7 (wurde vorher ausgewählt)
V0011 hat den Wert 8
V0012 hat den Wert 9

Nun soll eine von diesen 9 Variablen herausgesucht werden, jedoch darf die herausgesuchte Variable weder den Wert 1, noch 5, noch 7 besitzen!
Die Werte die vorher ausgewählt werden, können jedoch variieren, d.h. es können alle möglichen Zahlen zwischen 1 und 9 vorher ausgewählt werden.
Die Werte 1,5 und 7 sind nur Beispiele.
Wie schreibe ich das so in den Maker, damit es funktioniert (RM2K3)?
Vielen Dank schonmal.

MfG MJ

makenshi
19.09.2008, 10:50
Das kannst du relativ einfach realisieren.
Weisst du wie groß die Werte werden können?

Wenn die Werte maximal 6 stellig werden können, dann kannst
du die Millionstelle als Flag benutzen. Heisst also:

Inhalt der Variable: 100.229
Diese wurde nun ausgewählt. Also addierst du eine Millionen darauf.

100.229 + 1.000.000 = 1.100.229.

Wenn du nun abfragen willst ob die Variable schonmal ausgewählt wurde:
1.100.229 / 1.000.000 = 1 ( Der Maker beherrscht keine Kommarechnung, alles hinter dem Komma wird abgeschnitten)
Die 1 sagt das die Flag vorhanden ist. Und damit das die Variable schonmal ausgewählt wurde. Wenn bei der obrigen Rechnung eine 0 herauskommt, dann ist die Variable noch nie gewählt worden.

Vergiss am Ende nicht deine Variablen wieder von der Flag zu befreien.
Das kannst du ganz einfach indem du alle deine Variable modulierst mit 1.000.000.

Sprich:
Variable MOD 1.000.000 = alter Wert ohne Flag.

Kelven
19.09.2008, 10:54
Hm, zunächst musst du dir die drei gewählten Werte merken (ich nehme mal an, dass du sie sowieso für irgendetwas benötigst). Außerdem brauchst du noch eine Variable für den vierten Wert. Wobei ich mir jetzt nicht ganz sicher bin, soll der Wert der Variable gespeichert werden oder die ID der Variable? Ich gehe mal vom Wert aus. Und wenn ich dich richtig verstanden habe, soll eine der 9 Variablen zufällig ausgewählt werden.

V0013 Wahl1
V0014 Wahl2
V0015 Wahl3
V0016 Wahl4



Loop
Forc VAR Wahl4 > 0
Break Loop
End
VAR Zufall = Random 1-9
VAR Zufall = VAR Zufall + 3 \\ da die Variablen bei ID 4 anfangen
VAR Wert = VAR [VAR Zufall] \\wieder 3. Option unten
Forc VAR Wert != VAR Wahl1 \\ungleich
Forc VAR Wert != VAR Wahl2
Forc VAR Wert != VAR Wahl3
VAR Wahl4 = VAR Wert
End
End
End
End