von BCGSR » Sa 28. Jun 2003, 14:59
Ich habe mir mal dein kleines Prog durchgeschaut. Da gibt es viele Dinge, die man mit kleinen Kniffen viel schneller lösen könnte. Hier mal ein paar Tipps :)
Hast du beachtet, dass deine Zufallszahl A auch Null werden kann? Und du mit dem Befehl "Text 6,A,..." nichts anzeigst?
Sinnvoller ist es, die Zufallszahl so zu erzeugen:
1+ Int(120Ran#)->A
Damit hast du immer Ganzzahlen zwischen Eins und 120, ohne Null.
Zweitens, mit ein bisschen Mathematik kann man die If-Schleife so abkürzen und modifizieren (offensichtlich soll ja jedes 6. Pixel beachtet werden, gezählt ab eins, was dann wäre 1,7,13...)
Frac((A-1)/6)=0=>Goto 1
Goto 0
Da du aber offensichtlich mit der If-Schleife nur bezwecken willst, dass du Zahlen wie 1,7,13.. etc. hast, kannst du das so machen:
(6Int20Ran#)+1->A
[6 gibt die Schrittweite/Abstand an, die 20 die Anzahl maximaler Spalten/Zeilen]
D.h. du brauchst nicht erst Zalhen erzeugen und dann prüfen, sondern du gibst sie dir genau vor.
Was beabsichtigst du eigentlich mit dem Befehl "C=1=>0" und "C=0=>1"? Der bringt nämlich nichts.
Weiterhin kannst du die Green Text 6,A,C ... Green Text 12,A,C ... Green Text 18,A,C hervorragend mit einer For-To-Schleife zusammenfassen, und zwar mit
For 6->B to 120 Step 6
...
Green Text B,A,C
Next
Wenn du jetzt alles zusammensetzt, die Abstände zwischen den Einsen und Nullen auf genau 1 Pixel reduzierst und die Zeichen von oben nach unten statt von link nach rechts "laufen" lässt, kommt da dabei raus:
ClearGraph
Do
5(Int(25Ran#)+1->B
For 1->A To 61 Step 6
Green Text A,B,Int 2Ran#
Next
LpWhile Not Getkey
Viel Spass noch beim Probieren!
Ciao, BCGSR