Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Winkel
Anmeldungsdatum: 17.07.2006 Beiträge: 25 Wohnort: Berlin
|
Verfasst am: 20.03.2007, 13:01 Titel: Variablen laufenddeklariwren |
|
|
Hallo an Alle:
Meine Proramm hapert an einer Stelle, an der Ich mal wieder Hilfe Brauche !
Ich habe Variablen deklariert, Wu(1), Wu(2), Wu(3), Wu(4).
Nun kommts es vor, das ich im laufenden Programm,bei jeden Durchlauf,
eine weitere Variable deklarieren mus, diese aber dann las NÄCHSTE nehmen muss...
ich schreibe das jetzt so nieder wie ich mir das vorstelle:
'aktuelle niegrigste Variable Vanf ( wie anfang ) Wu(1) = ...
'aktuelle höchste Variable Vende ( wie ende ) Wu(n) = ...
Mache dies und das
IF dies und das THEN Wu(n+1) = 7 `die nachste Veriable bildet sich als
Wu(5) = 7
Die höchste variable ist jetzt Wu5, also ist Vende = Wu5
Summiere alle werte der Variablen Vanf bis Vuende
IF SUMME dies und das, THEN mache dies und das.
Lösche Vuanf,
'die variable Wu(1) existiert nich mehr. neue niedrigiste Veriable Vanf
'ist jetzt Vu(2)
Input dies und das
Ende ja / Nein
If nein goto neue Handlung..
So, hoffentlich kann jemand verstehen was ich meine, - es ist nicht einfach...- und kann mit tipps geben.
Mathematisch könnte man es so ausdrucken:
v(0), v(1), v(2)...v(n-1), v(n)
Ich brauche eine Weg um v(n+1) zu definieren/deklarieren.
Dann habe ich auch schon V(ende)
V(anfang) ist v(0)
Oder soll ich mit DATA arbeiten ?????
(Habe Data nicht einmal beschnuppert...)
Winkel |
|
Nach oben |
|
 |
PMedia
Anmeldungsdatum: 14.08.2006 Beiträge: 2847
|
Verfasst am: 20.03.2007, 13:53 Titel: |
|
|
Äh, dann dimensioniere dir doch ein Array? |
|
Nach oben |
|
 |
Winkel
Anmeldungsdatum: 17.07.2006 Beiträge: 25 Wohnort: Berlin
|
Verfasst am: 20.03.2007, 14:06 Titel: |
|
|
Danke, PMedia,
werde darüber grübeln....
Winkel |
|
Nach oben |
|
 |
Skilltronic

Anmeldungsdatum: 10.09.2004 Beiträge: 1148 Wohnort: Köln
|
Verfasst am: 20.03.2007, 14:11 Titel: |
|
|
Hallo
Also wenn ich das richtig verstanden habe (die Tipp- und Schreibfehler in der Frage machen es einem nicht gerade einfach), arbeitet er ja schon mit einem Array.
Also die Zahl der Variablen bleibt doch gleich. Es kommt zwar jeweils ein neuer Eintrag dazu, dafür wird der erste gelöscht. Stimmt das so? In dem Fall kannst du vielleicht einfach die Indizes verschieben. Zuerst hast du v(0)-v(n). Dann kommt v(n+1) dazu und v(0) wird gelöscht. Warum also nicht v(n+1) einfach in v(0) schreiben, v(n+2) in v(1) usw. Wenn man das Programm konkret kennen würde, könnte man sicher mehr dazu sagen.
Gruß
Skilltronic _________________ Elektronik und QB? www.skilltronics.de ! |
|
Nach oben |
|
 |
chutullu
Anmeldungsdatum: 18.10.2005 Beiträge: 77
|
Verfasst am: 20.03.2007, 16:24 Titel: |
|
|
Klingt nach dem "LIFO" ([L]ast[I]n[F]irst[O]ut) und ist doch nichts anderes als eine Schieberegister :
Code: |
dim wu(1 to 10) as integer
dim neu as integer
dim anzArray as integer
anzArray = 10 'Umfang des Array's
neu = 4
'mit werten füllen
for a=1 to anzArray
wu(a) = a
next a
'einmal schieben
For a=1 to anzArray - 1
wu(a) = wu(a+1)
next a
wu(anzArray) = neu |
Falls das nicht das richtige sein sollte liegt es an :
Zitat: | Also wenn ich das richtig verstanden habe (die Tipp- und Schreibfehler in der Frage machen es einem nicht gerade einfach), |
|
|
Nach oben |
|
 |
|