FSR-Online
  AG Informatik






  1. Erweitere das Programm Rakete1 wie folgt und starte es.
           REM Rakete2
           SCREEN 12
           x = 320
           y = 200
           ZeichneRakete x, y
           DO
             DO
               a$ = INKEY$
             LOOP UNTIL a$ <> ""
             IF LEN(a$) > 1 THEN a$ = MID$(a$, 2, 1)
             LoescheRakete x, y
             SELECT CASE ASC(a$)
               CASE 80   'nach unten
                 y = y + 4
               CASE 72   'nach oben
                 y = y - 4
               CASE 75   'nach links
                 x = x - 4
               CASE 77   'nach rechts
                 x = x + 4
             END SELECT
             ZeichneRakete x, y
           LOOP UNTIL a$ = CHR$(27)
           LoescheRakete x, y
           SCREEN 0
           END
    
    Das Programm stellt zuerst die Rakete dar, wartet auf das Drücken einer gültigen Taste, löscht dann die Rakete, verändert je nach Richtungstaste die Koordinaten x und y der Rakete und zeichnet dann die Rakete neu. Wird die äußere DO...LOOP -Schleife durch Drücken der Esc-Taste verlassen, dann wird die Rakete gelöscht und das Programm beendet.

  2. Das Programm Rakete2 hat den Nachteil, daß die Rakete außerhalb des Bildschirmbereichs bewegt werden kann. Um zu verhindern, daß die Rakete den Bildschirm-Rahmen verlassen kann, werden nach dem END SELECT-Befehl an die folgenden Zeilen eingefügt.
           IF x < 24 THEN x = 615
           IF x > 615 THEN x = 24
           IF y < 0 THEN y = 0
           IF y > 385 THEN y = 385
    
  3. Füge nach dem SCREEN-Befehl die folgende Programm-Zeile ein und ergänze das Programm um das Unterprogramm ZeichneSterne.
           SCREEN 12
           ZeichneSterne 3000
           :
    
    
           SUB ZeichneSterne (n)
             FOR i = 1 TO n
               PSET (RND * 640, RND * 480), RND * 13 + 2
             NEXT i
           END SUB
    
    Welchen Nachteil hat das erweiterte Programm?

  
Friedrich-Schiller-Realschule Böblingen, Kremser Str. 5, 71034 Böblingen
©1996,1999 Winfried Furrer, Böblingen