Post on 05-Apr-2015
transcript
Informatik 11/12 2004-2006
Programmieren mit Delphi
A. Gillmann, V. Reimchen, M. Reker
Inhalt 1. Halbjahr Jahrgangstufe 11
Arbeiten mit Delphi 7 Einführung in Delphi Karel Ausbau des Programms Kontrollstrukturen Objektorientiertes Programmieren Erstellung eigener Welten
Arbeiten mit Delphi 7
Bei Delphi handelt es sich um eine Programmiersprache, mit deren Hilfe man eigene Windowsanwendungen erstellen kann. Das Programm Delphi 7 von Borland hilft einem dabei.
Einführung in Delphi Karel Delphi Karel ist ein
vorgefertigtes Roboter Programm, das einem beim Erlernen von Delphi hilft
Wir testeten den Roboter RD1 und seine Welten
Ausbau des Programms
Links drehen Slalom laufen (um Bäume)
Wir haben das Programm um kleinere Befehle ergänzt und kleine Probleme gelöst, z. B.:
Kontrollstrukturen For-Schleife
soll ein Anweisung (oder ein Anweisungsblock) eine bestimmte Anzahl lang wiederholt werden, so kann man die Zählschleife benutzen.
Repeat-Schleifeführt die Anweisung aus, falls die Ausstiegsbedingung erfüllt ist, bricht sie ab, sonst startet sie von vorn
While-Schleifeüberprüft die Eintrittsbedingung, falls die Bedingung erfüllt ist, führt die Anweisung aus und startet von vorn, sonst bricht sie ab
Kontrollstrukturen 2
Fallunterscheidungen (if-Abfrage) if Bedingung erfüllt then Anweisung ausführen
Fallunterscheidungen mit Alternative (if-then-else)
if Bedingung erfüllt then Anweisung else Anweisung
Objektorientiertes Programmieren
OOP bedeutet Anweisungen zu Funktionen, Prozeduren und Methoden zusammenzufassen, z.B:
procedure GeheZweiSchritteVor; begin
RD1.Vor; RD1.Vor end;
Erstellung eigener Welten Wir haben eigene Welten erstellt,
in denen sich Karel bewegen kann In diesen Welten haben wir weitere
Probleme gelöst (z.B. Blumenpflücken)
Beispiel:
Inhalt 2. Halbjahr Jahrgangstufe 11
Bearbeitung von Labyrinthproblemen
Rekursive Algorithmen Türme von Hanoi Eigene Programme Besuch im Rathaus
(Stadtverwaltung)
Bearbeitung von Labyrinthproblemen Um die komplexeren
Labyrinthprobleme zu bearbeiten, haben wir unseren Roboter verbessert
Wir arbeiten jetzt mit dem Roboter MyRobot
Dann haben wir eigene Objekte entwickelt: (TSchatz)
Zusätzlich haben wir Methoden entwickelt, um den Ausgang eines Labyrinths zu finden
Bearbeitung von Labyrinthproblemen Wir haben unseren neuen
Roboter nun in unseren eigenen Labyrinthen auf die Suche nach unserem selbsterstellten Schatz geschickt
Beispiel:
Rekursive Algorithmen Eine Rekursion ist ein Algorithmus, der
sich selbst wieder aufruft Mit Hilfe dieser Rekursionen haben wir
mathematische Probleme (z.B. Fibonacci-Folge, Fakultät, Quadrieren) erarbeitet
Zusätzlich haben wir rekursiv Programme für unseren Roboter entwickelt, mit denen er zum Beispiel Treppen hinauf und wieder heruntergehen kann
Türme von Hanoi Mit Hilfe der Türme von Hanoi
(eine hinduistische Geschichte) haben wir verzweigte Rekursionen kennen gelernt, bei denen im Inneren mehr als 1 Aufruf erfolgt
Eigene Programme Nun haben wir eigene Programme
entwickelt, um unter anderem das eigene Idealgewicht auszurechnen und Währungen umzurechnen
Beispiel Idealgewicht:
Besuch im Rathaus (Stadtverwaltung)
Im Rathaus wurde uns gezeigt, dass man in der Stadtverwaltung ohne EDV nicht auskommen würde
Auch haben wir etwas über das Netzwerk der Stadtverwaltung und ihrer Außenbezirke erfahren
Wichtig hierfür sind gute Virenschutzprogramme, da ein Virus große Schäden verursachen könnte
Inhalt 1.Halbjahr Jahrgangsstufe 12 Berechnung von Nullstellen
(Newtonsche Näherungsverfahren) Ackermannfunktion Sortierverfahren Besuch im Mathias-Spital Mathe-Tiger
Berechnung von Nullstellen (Newtonsche Näherungsverfahren)
Mit Hilfe des Newtonschen Näherungsverfahrens haben wir ein Projekt bearbeitet, das Nullstellen von Funktionen berechnet
Ackermannfunktion Die Ackermannfunktion ist eine
extrem schnell wachsende mathematische Funktion, mit deren Hilfe Grenzen von Computer- und Berechnungsmodellen aufgezeigt werden können
Wir haben weitere Funktionen, mit denen man z.B. das Pascalsche Dreieck darstellen kann, erarbeitet
Sortierverfahren Sortieren von Daten ist ein
zentrales Problem der Informatik, was mit Hilfe der EDV schnell gelöst werden kann
Es gibt verschieden Sortierverfahren und wir haben die drei folgenden kennen gelernt:
Bubble Sort, direktes Einfügen, Quicksort
Sortierverfahren Bubble Sort ein einfaches Sortierverfahren, das jedes Element mit seinem
Nachbar vergleicht und es so an die richtige Position befördert, allerdings ist es eher langsam und für große Datenmengen nicht geeignet
Direktes Einfügen komplexeres Sortierverfahren als Bubble Sort, das die Elemente
miteinander vergleicht und sie direkt auf die richtige Position einfügt
Quicksort gilt als schnellstes internes Sortierverfahren, das die Datenmenge
zunächst grob vorsortiert und anschließend verfeinert und ist besonders geeignet für große Datenmengen
Besuch im Mathias-Spital Hier haben wir uns angesehen,
wie mit Hilfe von EDV die Patientenakten verarbeitet werden und sie durch das Netzwerk im ganzen Haus abrufbar sind
Zusätzlich haben wir uns den Kernspinttomographen angesehen
Mathe-Tiger Der Mathe-Tiger ist unser
selbstentwickeltes Lernspiel mit dem man sein mathematisches Geschick unter Beweis stellen und einfache Rechenregeln trainieren kann
Inhalt 2.Halbjahr Jahrgangsstufe 12
Programmierung von „Verbotene 1“ Schülerverwaltungsprogramme
(Verwendung von Arrays und Listen mit Zeigern)
UPN – Rechner Anatomie eines Baumes (Binärbaum) Huffman – Code Besuch im Architekturbüro
Hofschröer
Programmierung von „Verbotene 1“ Die „Verbotene 1“ ist ein Spiel bei dem ein
Spieler so lange würfelt und die Augenzahlen addiert bis er eine „1“ würfelt oder er die Summe sichert dann ist der andere Spieler an der Reihe
Bei einer „1“ wird die Summe zurückgesetzt Durch den Button Sichern wird die Summe
auf den Kontostand verschoben Das Ziel des Spiels ist einen Kontostand von
100 Augen zu erreichen
Programmierung von „Verbotene 1“ Die Oberfläche des Spiels
„Verbotene 1“
Schülerverwaltungsprogramme Mithilfe von Listen und Arrays haben
wir eigene Verwaltungsprogramme erstellt, die verschiedene Daten von Schülern (z.B. Name, Vorname, gewählte Fächer usw.) speichern konnten.
Diese Programme haben durch weitere Fähigkeiten wie Lösch-, Such- und Sortierfunktionen verbessert.
UPN - Rechner UPN ist eine Abkürzung für „umgekehrte
polnische Notation“ und beschreibt ein Verfahren, einen mathematischen Term ohne Klammern darzustellen (Postfixnotation), z.B:
Infixnotation: 2*(3+4*7) Postfixnotation: 2 3 4 7 * + * Der UPN-Rechner basiert auf dem Prinzip
eines Kellers (LIFO-Prinzip) und so sind weder Klammern noch Punkt-vor-Strich-Rechnung nötig.
Ein Keller (Stack) ist eine spezielle Liste, bei der die Daten wie auf einem Stapel abgelegt und bearbeitet werden.
Anatomie eines Binärbaumes Ein Binärbaum ist eine besondere Art
von Liste mit zwei Nachfolgern Beispiel für einen Binärbaum:
Der Huffman-Code Um einen Text auf dem Computer
speichern zu können, muss er zunächst in eine Abfolge von Nullen und Einsen codiert werden.
Mit dem Huffman-Code geschieht dies in einer besonders Platz sparenden Weise.
Hierbei arbeitet er nach der Struktur des Binärbaumes
Besuch im Architekturbüro Hofschröer Im Architekturbüro Hofschröer
haben wir verschiedene Programme zur Planung und Durchführung von Bauvorhaben kennen gelernt.