Seite 1 von 1

Listen

Verfasst: 28.03.2010 14:19
von Marvin133
wie kann ich eine Liste in der console ausgeben?also die werte

Re: Listen

Verfasst: 28.03.2010 14:34
von STARGÅTE

Code: Alles auswählen

  NewList Zahlen()
  For n = 1 To 10
    AddElement(Zahlen())
    Zahlen() = Random(999)
  Next
 
  OpenConsole()
  ForEach Zahlen()
    PrintN(Str(Zahlen()))
  Next
  Input()
Konsole öffnen, und einfach reinschreiebn /:->

Re: Listen

Verfasst: 28.03.2010 15:32
von Marvin133
Ok soweit klappt auch alle nur wenn ich eine consolen ausgabe mache steht da der flasche wert

Code: Alles auswählen

InitKeyboard()
InitSprite()

OpenWindow(0,0,0,20,20,"Logic")
OpenWindowedScreen(WindowID(0),0,0,20,20,0,0,0)

activate=1
pos=1


Structure Inverter
x.i
y.i
follow.i
EndStructure

NewList _Not.Inverter()

AddElement(_Not())
   _Not()\x=0
   _Not()\y=1


While activate=1
ExamineKeyboard()

   
If KeyboardReleased(#PB_Key_A)
   AddElement(_Not())
   _Not()\x=0
   _Not()\y=1
EndIf

If KeyboardReleased(#PB_Key_O)
   activate=0
EndIf



If KeyboardReleased(#PB_Key_Up)
   pos=pos+1
EndIf

If KeyboardReleased(#PB_Key_Down)
   pos=pos-1
Else
If pos<=0
   pos=1
EndIf
EndIf

y=SelectElement(_Not(),pos)



Wend

OpenConsole()
PrintN("An Position "+Str(pos)+", der Wert lautet "+Str(y))
Delay(20000000)
was könnte man ändern?

Re: Listen

Verfasst: 28.03.2010 15:48
von #NULL
SelectElement() hat laut PB-hilfe keinen rückgabewert, in wirklichkeit gibt die funktion aber die speicheraddresse des neu ausgewählten elements zurück. beides sollte dich aber nicht interessieren. die liste hat nach SelectElement() dann von sich aus die gewünschte position, also greife einfach normal auf die liste zu:

Code: Alles auswählen

  ; ...
  SelectElement(_Not(),pos)
Wend

; ...
PrintN("An Position "+Str(pos)+", der Wert lautet "+Str(_Not()\y))
..als beispiel, falls du den y-teil des elements ausgeben willst.