Das Trainingsbuch zu LOGO

Aus C64-Wiki
Zur Navigation springenZur Suche springen


Das Trainingsbuch zu LOGO
Cover/Buchdeckel
Sprache deutsch
Autor(en) Dr. Gerhard Sauer
Verlag Data Becker
Jahr 1985
ISBN ISBN 3-89011-044-4
Neupreis 39.- DM
Datenträger
Seitenzahl 374
letzte Auflage
Genre Programmieren
Information Mehrere Auflagen erschienen




Buchrückseite[Bearbeiten | Quelltext bearbeiten]

DAS STEHT DRIN: LOGO ist nicht nur eine Sprache für Kinder, sondern eine für viele Bereiche interessante und bemerkenswerte Computersprache. Neben einer leicht verständlichen Einführung in das LOGO des COMMODORE 64 bietet dieses Trainingsbuch zusätzlich viele tiefergehende Informationen, um die besonderen Eigenschaften der Sprache nutzen zu können.

Aus dem Inhalt:

  • Grafikprogrammierung
  • Einführung in Wörter- und Listenverarbeitung
  • Funktionsplotter
  • Bedienung des LOGO-Systems
  • Maskengenerator
  • fortgeschrittene Grafik (3-D)
  • Ein-/Ausgabe
  • Prozeduren
  • Rekursion
  • Vertieftes Arbeiten mit Listen
  • Datenstrukturen mit LOGO
  • Sprites und Musik

und vieles mehr

UND GESCHRIEBEN HAT DIESES BUCH:
Dr. Gerhard Sauer ist Physiker, Studienrat und programmiert seit 1965. Diese Verbindung führte ihn dazu, sich mit der besonders für. den Ausbildungsbereich interessanten Sprache LOGO zu beschäftigen.

Inhaltsverzeichnis[Bearbeiten | Quelltext bearbeiten]

LEKTION 1: RECHNEN MIT  LOGO 

1.1  Erste Rechenaufgaben ................................ 3 
1.2  Editieren von Eingabezeilen ......................... 5 
1.3  Zahlen  Speichern ................................... 11 
1.4  Mit gespeicherten Zahlen  Rechnen ................... 14 
1.5  Mathematische Funktionen ............................ 16 

LEKTION  2: WÜRFELN UND  WIEDERHOLEN 

2.1  Zufallszahlen ....................................... 21 
2.2  Ausgabe von  Resultaten ............................. 23 
2.3  Wiederholung von  LOGO-Anweisungen .................. 25 

LEKTION 3: PROGRAMMIEREN 

3.1  Programmieren als  Spracherweiterung ................ 31 
3.2  Der  Umgang mit Prozeduren .......................... 32 
3.3  Prozeduren mit Ergebnis ............................. 36 
3.4  Einfache Programme  Schreiben ....................... 38 

LEKTION 4: PROGRAMME  EDITIEREN 

4.1  Programme Korrigieren ............................... 44 
4.2  Programme  mit Eingaben ............................. 47 
4.3  Globale und  lokale  Namen .......................... 50 
4.4  Den  erweiterten Wortschatz  Ausgeben ............... 52 
4.5  Programme und  Namen Löschen ........................ 54 

LEKTION 5: EINFÜHRUNG IN  DIE GRAFIKPROGRAMMIERUNG 

5.1  Bewegungen der  Schildkröte ......................... 55 
5.2  Einfache Grafikprogramme ............................ 61 
5.3  Drehen von Figuren .................................. 64 
5.4  Verschieben von  Figuren ............................ 66 
5.5  Prozeduren rufen Prozeduren ......................... 69 
5.6  Der  Ablaufverfolger in  LOGO ....................... 72

LEKTION 6: GRAFIKPROGRAMME MIT  WIEDERHOLUNG DURCH REKURSION 

6.1  Vom Quadrat zum  Kreis .............................. 75 
6.2  Strukturiertes Programmieren mit lokalen  Namen...... 79 
6.3  Die Schildkröte auf  krummen Wegen .................. 80 
6.4  Wiederholung durch Rekursion ........................ 85 
6.5  Rekursion mit veränderten Eingaben .................. 88 
6.6  Stickmuster oder  chaotische Kurven ................. 91 
6.7  Abbruch mit  Bedingungen ............................ 92 
6.8  Zeichnen im Koordinatensystem ....................... 94 
6.9  Funktionen Darstellen ............................... 98 

LEKTION 7: DIE  BEDIENUNG DES  LOGO-SYSTEMS 

7.1  Der  Umgang mit Disketten ........................... 105 
7.2  STARTUP : Selbststartende Programme ................. 112 
7.3  Platz  Schaffen ..................................... 116 
7.4  Neustart des  LOGO-Systems .......................... 119 
7.5  Bildschirmfarben .................................... 119 

LEKTION 8: WÖRTER UND  LISTEN 

8.1  Zeichenketten als  Wörter ........................... 124 
8.2  Sätze als  Listen ................................... 126 
8.3  Sätze aus  Sätzen:  Hierarchische Listen ............ 128 
8.4  Zerlegen von Listen  und Wörtern..................... 129 
8.5  Zusammensetzen von Wörtern und  Listen .............. 132 
8.6  Zufallssätze ........................................ 136 
8.7  Aufteilen von Wörtern und  Listen ................... 140 
8.8  Listen Verlängern ................................... 148 
8.9  Prüfwörter .......................................... 152 

LEKTION 9: EINGABE UND  AUSGABE 

9.1  Eingabelisten ....................................... 161 
9.2  Sprünge nach vorne  und hinten ...................... 164 
9.3  Bildschirm-Layout ................................... 172  

LEKTION  10:  PROZEDUREN 

10.1  LOGO-Tätigkeiten als  Prozeduren ................... 182 
10.2  Prozedurtypen ...................................... 184 
10.3  Das  Zusammenwirken von Prozeduren ................. 188 
10.4  Untersuchung des  Programmaufbaus .................. 191 

LEKTION  11:  REKURSION 

11.1  Rekursiver Aufruf am  Prozedurende ................. 200 
11.2  Rekursiver Aufruf vor  dem Prozedurende ............ 203 
11.3  Rekursive Funktionen ............................... 207 
11.4  Weitere Beispiele zur  Rekursion ................... 211 
11.5  Die  Türme  von Hanoi .............................. 213 

LEKTION  12:  VERTIEFTES ARBEITEN MIT LISTEN 

12.1  Ersetzen von Listenelementen ....................... 221 
12.2  Ersetzen in  Texten ................................ 225 
12.3  Ersetzen mit Zuordnungstabellen .................... 227 
12.4  Suchen im Kontext:  Intelligente Dialogprogramme.... 228 

LEKTION  13:  DATENSTRUKTUREN IN  LOGO ................... 237 

13.1  Einfache Listen:  Primzahlsieb ..................... 238 
13.2  Tabellen:  LOGOPLAN 240 
13.3  Baumstrukturen:  Tiereraten ........................ 248 
13.4  Verbundene Daten:  Sortieren mit Schlüsseln ........ 260 

LEKTION  14:  PROGRAMME ALS  LISTEN 

14.1  Die  Grundfunktionen ............................... 265 
14.2  Programme schreiben Programme ...................... 267 
14.3  Anwendungsbeispiele ................................ 270 
14.4  LOGOPLAN:  Rechnendes Tabellenprogramm ............. 272 
14.5  Maskengenerator .................................... 276 

LEKTION  15:  FORTGESCHRITTENE GRAFIKPROGRAMMIERUNG 

15.1  Die Richtung der Turtle ............................ 285 
15.2  Die Position der  Turtle ........................... 287 
15.3  Punkte  Setzen  und Löschen ........................ 289 
15.4  Beschriftung von Grafiken .......................... 291 
15.5  Beispiele zur  Grafik in  LOGO ..................... 293 
15.6  Zeichnen in  drei Dimensionen ...................... 301 

LEKTION  16:  SPRITES UND  MUSIK 

16.1  Programmierung von Sprites ......................... 308 
16.2  Sprites  Vergrößern und  Verkleinern ............... 312 
16.3  Speicher Lesen und  Beschreiben .................... 314 
16.4  BIT-Manipulationen ................................. 315 
16.5  Erzeugung von Sprites .............................. 316 
16.6  Speichern und Laden von  Sprite-Bildern ............ 318 
16.7  Kollisionen ........................................ 319 
16.8  Testbefehl für  die  Turtle-Grafik ................. 320 
16.9  Programmierung von Musik ........................... 323 

ANHANG:  LOGO-LEXIKON 

A1 Grafik-Vokabeln ....................................... 329 
A2 Vokabeln für  Wörter und  Listen ...................... 336 
A3 Vokabeln zum  Umgang mit Zahlen ....................... 340 
A4 Kontrollstrukturen .................................... 343 
A5 Prüfwörter,  Logische Ausdrücke ....................... 346 
A6 Programmieren. ........................................ 347 
A7 Vokabeln zur  Verwaltung von  Namen ................... 349 
A8 Vokabeln für  Ein-  und Ausgabe ....................... 350 
A9 Vokabeln zur  Speicherverwaltung ...................... 354 
A10 Weitere LOGO-Vokabeln ................................ 357 
A11  Hilfsmittel zum  Editieren .......................... 359

Leseprobe[Bearbeiten | Quelltext bearbeiten]

(1. Auflage - Seite 208: Kapitel "Lektion 16: Sprites und Musik")

LEKTION 16: SPRITES UND MUSIK

Für viele sind die Homecomputer in erster Linie Geräte für Computerspiele. Der Reiz dieser Spiele hängt teilweise mit der Möglichkeit schnell bewegter Grafiken und dem Einsatz von (manchmal nervtötenden) Musik- und Geräuscheffekten zusammen.

LOGO ist sicher nicht konzipiert, um damit professionelle Computerspiele zu erstellen, die werden in der Maschinensprache geschrieben. LOGO untersützt aber die vom Gerät her zusätzlich angebotene sogenannte SPRITE-Grafik. Die Programmierung von Sprites und Ton ist sehr rechnerspezifisch. Diese Lektion wendet sich speziell an die Leser, die mit dem Commodore 64 arbeiten.

16.1 PROGRAMMIERUNG VON SPRITES

Die Sprites sind grafische Objekte, die aus 21 Zeilen zu je 24 Punkten aufgebaut sind. Diese Objekte gehören weder zum Textschirm noch zum Grafikschirm, sie werden vom Rechner vielmehr zusätzlich beim Bildaufbau erzeugt. Will man auf dem Grafikschirm Figuren bewegen, so müssen einzelne Punkte gelöscht und andere neu gesetzt werden. Die Sprites werden dagegen nur bei der Erzeugung des Fernseh- bzw. Monitorbildes an anderer physikalischer Position wiedergegeben. Bewegungen werden auf diese Weise schneller und bequemer dargestellt.

Beim Commodore-LOGO hat man von vorneherein die Möglichkeit von Sprites genutzt: Die Schildkröte, d.h. das kleine den Zeichenstift repräsentierende Dreieck ist selbst ein Sprite.

Insofern wissen Sie schon fast alles über die Bewegung von Sprites. Die Turtle kann allerdings mehr als ein normaler Sprite. Das Dreieck wird bei der Ausführung der Drehbewegungen RIGHT und LEFT als solches auf den Bildschirm gedreht, die Kommandos zur Drehung haben nicht nur Einfluß auf den Weg, den der Zeichenstift nimmt, sie verändern auch die Stellung der Schildkröte.

Die anderen Sprites werden als ganze über den Bildschirm hinweg verschoben. Die Befehle RIGHT/LEFT, SETHEADING drehen die Richtung, in die die Sprites bewegt werden, die Objekte werden dadurch aber nicht wie die Turtle um die eigene Achse gedreht.

Für die Bewegung der Sprites ist der Wickel-Modus (WRAP) der Turtle-Grafik recht interessant. Bewegliche Objekte, die den Bildschirmrand überschreiten, kommen dann auf der entgegengesetzten Seite wieder ins Bild, ohne daß dazu besondere Anstrengungen nötig sind.

LOGO bietet mit dem Kommando PC (PENCOLOR) eine bequeme Möglichkeit, die Farbe der Sprites zu verändern. Farbänderungen können dann auch im Bewegungsablauf erfolgen.

Der Rechner C 64 kann acht solcher Objekte gleichzeitig auf dem Bildschirm darstellen, der Sprite Nr. 0 ist die Turtle selbst. Damit ist nicht die Anzahl der Figuren selbst beschränkt, nur können nicht mehr gleichzeitia dargestellt werden.

Die Befehle FORWARD, SETXY usw. wirken standardmäßig auf die Schildkröte. Sollen andere der gleichzeitig dargestellten Sprites angespochen werden, muß dies durch die LOGO-Vokabeı TELL befohlen werden.

                     TELL 2
  • TELL benötigt eine Eingabe zwischen O und 7. Bis zum nächsten TELL-Befehl wirken alle Kommandos für Sprites auf den angesprochenen Sprite.

TELL 2 heißt nicht, daß jetzt ein bestimmtes Objekt mit der Nummer 2 zu sehen ist, es wird nur mitgeteilt, wer . auf folgende Kommandos reagieren soll. Das Objekt 2 übernimmt jetzt die Rolle der Schildkröte.

                     TELL 2 SHOWTURTLE

macht das Objekt sichtbar,

                     TELL 2 HIDETURTLE

bringt es wieder zum Verschwinden.

Umgekehrt kann man die Nummer des gerade angesprochenen Objekts erfahren mit der LOGO-Vokabel WHO.

                     WHO RESULT : O

diese Zeile gibt an, daß die vertraute Schildkröte gerade auf die Befehle zur Bewegung hört.

                     TELL 1 + WHO

Damit wird auf den Sprite mit der nächsthöheren Nummer umgeschaltet. Der alte bleibt wohl sichtbar, kann aber nicht mehr (bis zum nächsten TELL) bewegt werden.

  • WHO braucht keine Eingaben, als Ergebnis wird die Nummer des gerade angespochenen Sprites zurückgegeben.

Die Sprites sind so etwas wie bewegliche Kisten auf dem Bildschirm. In diese Kisten können jeweils verschiedene Bilder hineingestellt werden. Man kann auch dieselben Bilder gleichzeitig in verschiedene Kisten hineinstellen und getrennt über den Bildschirm bewegen.

Im Prinzip kann man einen großen Vorrat an möglichen Bildern im Rechner bereithalten, von denen aber gleichzeitig nur acht dargestellt werden können. Diese Bilder benötigen jeweils Speicherplatz zur Lagerung. In LOGO sind wegen des knappen Speicherplatzes nur acht mögliche Bilder zugelassen, eigentlich sogar nur 7, weil die Nummer Null für die drehbare Standardturtle reserviert ist. Wünscht man eine größere Vielzahl von Bildern, muß man neue Bilder von der Diskette holen und dafür andere im Rechner löschen.

Die Zuweisung eines Bildes zu einem bestimmten Sprite geschieht mit der LOGO-Vokabel SETSHAPE.

                  TELL 1 SETSHAPE 5

TELL 1 bewirkt, daß alle Befehle auf Sprite Nr.1i wirken, auch SETSHAPE. SETSHAPE 5 bedeutet dann: das Bild Nr. 5 wird in die "Kiste" Nr. 1 gestellt. Dieses Bild wird dann künftig bewegt, wenn TELL 1 befohlen und damit etwa WHO das Resultat 1 ergibt.

                  TELL 1 SETSHAPE 1 TELL 2 SETSHAPE 1

Damit wird dasselbe Bild in zwei verschiedene "Kisten" gestellt, es kann damit unabhängig voneinander in doppelter Ausführung bewegt werden.

Die Gestalt Nr.0 ist das kleine Dreieck zur Darstellung der Turtle. Diese Gestalt ist reserviert und sollte nur vom Sprite Nr. 0 benutzt werden. Wird die normale Turtle nicht benutzt, kann man im Prinzip auch ein Bild in diese Kiste stellen.

Umgekehrt kann man auch nachfragen, welches Bild in der gerade befehligten "Kiste" steht. Dies geschieht mit SHAPE.

                  TELL 1 MAKE "S SHAPE

Unter dem Namen S ist danach die Nummer des für Sprite Nr.1 verwendeten Bildes verfügbar.

  • SETSHAPE hat eine Eingabe zwischen 0 und 7. Dem gerade hörenden Sprite wird das Bild mit der Nummer des Eingabewertes zugewiesen. Die Eingabe 0 (TURTLE-Figur) ist nur für SPRITE Nr.O zulässig, also nach TELL 0.
  • SHAPE hat keine Eingabe. Als Ergebnis wird die Nummer des Bildes zurückgegeben, das in der gerade kommandierten "Kiste" steht.

Damit sind bereits die Vokabeln im Grundwortschatz von LOGO erschöpft, die zur Steuerung der Sprite-Grafik vorhanden sind.

Die Programmierung der Sprites ist nur sinnvoll, wenn auch geeignete Bilder vorhanden sind. Wenn Sie trotzdem einfach mit den Kommandos experimentieren, erscheinen dennoch Objekte auf dem Bildschirm. Sie kommen von den zufällig im entsprechenden Bereich stehenden Speicherinhalten.

Fehler[Bearbeiten | Quelltext bearbeiten]

Meinung[Bearbeiten | Quelltext bearbeiten]

Weblinks[Bearbeiten | Quelltext bearbeiten]