"nachrutschen" der nachbarn

Übersicht BlitzBasic Beginners-Corner

Gehe zu Seite Zurück  1, 2

Neue Antwort erstellen

Vidde

BeitragMo, März 16, 2009 16:52
Antworten mit Zitat
Benutzer-Profile anzeigen
das thema hat mich nach wie vor nicht losgelassen und hab nun doch eine recht schnelle lösung für Dim.
mit diesem code werden alle 0er oder kleineren aussortiert und der rest rutscht nach - so wie ichs wollte.

Code: [AUSKLAPPEN]
SeedRnd MilliSecs()

Graphics 500,700

Global Max% = AnzahlG()

Dim Energie(Max)
Dim Dach(Max)
Dim Keller(Max)


Function AnzahlG()
   Local anzahl%
   
   Repeat
      anzahl% = Input ("Wie viele Häuser?: ")
     
   Until anzahl% > 1 And anzahl% < 30

   Return anzahl                     
End Function


For i = 0 To Max
  Energie(i) = Rand(-10,10)
  Dach(i) = Rand(50,100)        ; ordnert jedem Haus einen Dachwert zu
  Keller(i) = Rand(80,150)      ; ordnert jedem Haus einen Kellerwert zu
Next

Print ""


; zeigt alle Gegner mit Energie- und entsprechenden Dach- und Kellerwerten an
For n = 0 To Max
  Print (n) + " hat " + Energie(n) + " Energie   " + Dach(n) + " Dach   " + Keller(n) + " Keller"
Next


Print ""

WaitKey


; Schleife zum aussortieren der defekten Häuser
Repeat
  For i = 0 To Max-1
    If Energie(i) < 1 Then      ; wenn Energiewert 0 oder kleiner wird er so an die letzte Position übergeben
      Energie(i) = Energie(i+1)
      Energie(i+1) = 0

      Dach(i) = Dach(i+1)       ; übergibt den Dachwert an letzte Position
      Keller(i) = Keller(i+1)   ; übergibt den Kellerwert an letzte Position
     
    EndIf
  Next

  If Energie(Max) < 1 Then      ; löscht die letzte Position wenn Ihr Energiewert 0 oder kleiner ist
    Max = Max - 1
  End If
Until Energie(i) > 0


; zeigt die bereinigte Häuserreihenfolge
For n = 0 To Max
  Print (n) + " hat " + Energie(n) + " Energie   " + Dach(n) + " Dach   " + Keller(n) + " Keller"
Next
Gern der Zeiten gedenk ich, als alle Glieder gelenkig - bis auf eins. Diese Zeiten kehren nie wieder, steif sind nun alle Glieder - bis auf eins.

Gehe zu Seite Zurück  1, 2

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group