++++++++++++++++++++++++++++++++++++++++++++++++++++ + Skript, Teil 7 zum QBasic-Kurs I + + Von Robert Jessenberger + ++++++++++++++++++++++++++++++++++++++++++++++++++++ Der Zufallsgenerator -------------------- QBasic kennt einen Befehl, welcher eine Zahl per Zufall auswählt und zurückgibt. Er heißt: RND Schauen wir uns an, was er macht: PRINT RND PRINT RND PRINT RND Wir erhalten drei verschiedene Zahlen, kleiner als 1. Starte das Programm noch einmal: Du wirst wieder die gleichen Zahlen erhalten. Der Computer kann in Wirklichkeit nicht richtig per Zufall auswählen. RND ist eigentlich ein kleines Programm, welches es schafft, von einer vorgegebenen Zahl, viele neue Zahlen auszurechnen, welche für den Menschen wie wild durcheinander erscheinen. Nun gibt es einen Trick, um zu immer unterschiedlichen Werten zu kommen. Man startet den Zufallsgenerator mit einer wirklichen zufälligen Zahl, zum Beispiel der Uhrzeit. Den Trick kannten die Entwickler von QBasic natürlich auch und spendierten der Programmiersprache die Befehle: RANDOMIZE und TIMER zusammen ausgeführt: RANDOMIZE TIMER Noch ein Hinweis: Der Zufallsgenerator erzeugt immer eine Zahl zwischen 0 und 1. Braucht man aber zum Beispiel eine Zahl zwischen 0 und 10, so multipliziert man das Zufallsergebnis einfach mit 10. REM ****************** REM ** Zufallsbilder * REM ****************** SCREEN 9 RANDOMIZE TIMER REM Wir malen per Zufall eine Line: x1% = RND * 640 y1% = RND * 350 x2% = RND * 640 y2% = RND * 350 farbe% = RND * 15 LINE (x1%, y1%)-(x2%, y2%), farbe% REM Wir malen per Zufall ein Viereck: x1% = RND * 640 y1% = RND * 350 x2% = RND * 640 y2% = RND * 350 farbe% = RND * 15 LINE (x1%, y1%)-(x2%, y2%), farbe%, B REM Wir malen per Zufall ein Viereck, aber ohne Variablen: LINE (RND * 640, RND * 350)-(RND * 640, RND * 350), RND * 15, B REM Jetzt wird per Zufall ein Kreis gezeichnet: x1% = RND * 640 y1% = RND * 350 radius% = RND * 640 farbe% = RND * 15 CIRCLE (x1%, y1%), radius%, farbe% Aufgabe: -------- Vervollständige das Programm so, daß es, ohne wesentlich länger zu werden, viel mehr Linien, Vierecke und Kreise zeichnet. Zusatzaufgabe: -------------- Lasse auch gefüllte Vierecke zeichnen. Diese sollen aber eine gewisse Größe nicht überschreiten.