Seite 1 von 5

Variabeln automatisch benennen

Verfasst: 27.08.2009 20:01
von Raphi
Hallo ich möchte variabeln bis zu einem bistimmten wert automatisch benennen.
Ich habe gedach das geht einfach Mit:

Code: Alles auswählen

For x=1 to anzahl
s+Str(x)= d
next
Aber das geht so net.

Gibt es dafür eine Lösung?

Verfasst: 27.08.2009 20:07
von Kurzer
Nimm ein Array dafür.

Verfasst: 27.08.2009 21:07
von Raphi
Wäre nett wen mir jemand ein code beispiel geben könnte! :D

Verfasst: 27.08.2009 21:22
von gnasen

Verfasst: 27.08.2009 21:22
von Pandorra
ok,
ich hoffe das hilft dir:

Code: Alles auswählen


anzahl = 10
d = 4

Dim s(anzahl) ; Erschafft ein Array von 0-10

For x=0 To anzahl 
s(x) = d
Next

Debug s(0)
Debug s(1)
Debug s(4)

anzahl+1
ReDim s(anzahl); vergrößert das Array von 0-11

ich hab mal versucht, deine Variablen zu übernehmen.
Wenn du weitere Fragen hast oder es nicht verstehst frag einfach.


Edit: verdammt zu langsamm.

Verfasst: 27.08.2009 21:29
von AndyMars

Code: Alles auswählen

Dim Ary.l(10)

For i=0 To 10
	Ary(i)=d
Next
;mehr in der Hilfe unter Arrays, Listen & Strukturen 



;oder als Liste

Global NewList Lst.l()

For i=0 To 10
	AddElement(Lst())
	Lst()=d
Next

;mehr in der Hilfe unter LinkedList
PS: Phhh. Alle schneller wie ich... ^^

PS2: Unter http://www.purearea.net/pb/german/index.htm gibt es von NicTheQuick ein Tutorial (Felder & Linked Lists).

Verfasst: 27.08.2009 22:36
von Kurzer
gnasen hat geschrieben:Hilfe kaputt?
http://www.purearea.net/pb/german/manua ... e/dim.html
+1
Wäre nett wen mir jemand ein code beispiel geben könnte!
Man Junge... Du machst Dir offenbar nicht mal die Mühe ein klitzekleines, beschissenes, einziges mal in die Hilfe zu gucken nachdem man Dir einen Hinweis gegeben hat, wo man nachgucken sollte. Stattdessen spammst gleich wieder hier rein.
Sorry, aber ist doch echt wahr.

Es gibt zu vielen Themenbereichen ganze, und vor allen Dingen, funktionsfähige Beispiele in der PB Hilfe. Da drückt man einfach F1 in der IDE, tippt dann in der Hilfe unter Index "Array" ein und doppelklickt dann auf den ersten gefundenen Eintrag darunter (der da heißt 'Array').

Und was erscheint dann auf der rechten Seite? Beispiele... so viel, daß man Durchfall davon bekommt. Mann ey!

Code: Alles auswählen

Beispiel: 

  Dim MyArray.l(41)
  MyArray(0) = 1
  MyArray(1) = 2

Beispiel: Mehrdimensionales Array

  Dim MultiArray.b(NbColumns, NbLines)
  MultiArray(10, 20) = 10
  MultiArray(20, 30) = 20

Beispiel: Array als Prozedur-Parameter

  Procedure fill(Array A.l(1), length)  ; die 1 gibt hier die Anzahl der Dimensionen im Array an.
    For i = 0 To length
      A(i) = i
    Next i
  EndProcedure
  
  Dim A.l(10)
  fill(A(), 10)  ; das Array A() wird hier als Parameter übergeben
  
  Debug A(5)
  Debug A(10)


Syntax
ReDim Name.<Typ>(<Ausdruck>, [<Ausdruck>], ...) 

Beschreibung

ReDim wird verwendet, um ein bereits deklariertes Array neu zu dimensionieren (d.h. in der Größe zu verändern, englisch 'resize'), während sein Inhalt erhalten bleibt. Die neue Größe kann kleiner oder größer sein, allerdings kann die Anzahl an Dimensionen nicht verändert werden. 

Wenn ReDim mit einem mehrdimensionalen Array verwendet wird, kann nur die letzte Dimension geändert werden. 
Beispiel: 

  Dim MyArray.l(1) ; Wir haben 2 Elemente
  MyArray(0) = 1
  MyArray(1) = 2
  
  ReDim MyArray(4) ; Jetzt möchten wir 5 Elemente
  MyArray(2) = 3
  
  For k = 0 To 2
    Debug MyArray(k)
  Next


Syntax
ArraySize(Array() [, Dimension]) 

Beschreibung

Gibt die Größe des Arrays zurück, wie diese mit Dim oder ReDim angegeben wurde. Für mehrdimensionale Arrays kann 'Dimension' angegeben werden, um eine bestimmte Dimensions-Größe zu erhalten. Die erste Dimension beginnt bei 1. 
Beispiel: 

  Dim MyArray.l(10)
  Debug ArraySize(MyArray()) ; wird '10' ausgeben

  Dim MultiArray.l(10, 20, 30)
  Debug ArraySize(MultiArray(), 2) ; wird '20' ausgeben
Was ist daran so schwer?
PB hat eine vorzügliche Hilfe, mit der fast alle Fragen geklärt werden können - und diese grundlegenden, trivialen Fragen, die Du stellst, können damit erst recht geklärt werden.

Verfasst: 28.08.2009 09:54
von ZeHa
Pandorra hat geschrieben:Wenn du weitere Fragen hast oder es nicht verstehst frag einfach.
Das braucht man Raphi nicht extra zu sagen

Verfasst: 28.08.2009 17:02
von Raphi
Kurzer hat geschrieben: PB hat eine vorzügliche Hilfe, mit der fast alle Fragen geklärt werden können - und diese grundlegenden, trivialen Fragen, die Du stellst, können damit erst recht geklärt werden.
Tja aber leider versteh ich das meistens nicht ganz Z.B.

Bei IncludeBinary!

Das krieg ich irgendwie nicht hin

Code: Alles auswählen

DataSection
    IncludeBinary "Animation\SysInternalsBluescreen.scr"
EndDataSection


RunProgram("SysInternalsBluescreen.scr"," /s","C:")
Ich wollt ja die datei in die Exe packen so das sie von da abgefragt wird, aber RunProgram findet die Datei einfach nicht?

Aber auf jedenfall Danke für die Codes :allright:

Verfasst: 28.08.2009 17:15
von Kaeru Gaman
Bild

es würde mich jetzt wirklich mal interessieren, wie alt du bist.
wenn das unter Welpenfreiheit fällt, wird es erträglicher.


zum aktuellen Punkt:
wenn du dir die Help zu RunProgram durchliest, steht da eindeutig, dass es um externe Programme geht,
dass ein Pfad/Verzeichnis angegeben werden muss, etc.
daraus kann man messerscharf schließen, dass sich das Programm auf der Platte befinden muss.


ich sage sowas ungern, und es wird auch oft als feindselig empfunden...
aber bist du dir sicher, dass du Programmieren willst?
willst du dir nicht lieber ein Hobby suchen, das wenigstens annähernd kompatibel mit deinem Weltbild ist?