Aufgabenblatt 4 - Funktionen und Objektorientierung

Ähnliche Dokumente
Aufgabenblatt 4 - Funktionen und Objektorientierung

Aufgabenblatt 3 - Events und Arrays

Aufgabenblatt 3 - Events und Arrays

SCRATCH. Beispiel 1. "Pong"

Algorithmen - unplugged

Aufgabenblatt 9. Die Abgabe muss bis Sonntag, 21. Juni 2009, 24 Uhr, erfolgen. Verspätet eingereichte Lösungen werden nicht berücksichtigt.

Scratch: Spiele programmieren mit Scratch

Dash- Crash- Kurs. ein Robotik-Workshop mit dem Roboter Dash

MIA INFORMATIK Scratch Übungen

Anwendungspraktikum aus JAVA Programmierung im SS 2006 Leitung: Albert Weichselbraun. Java Projekt. Schiffe Versenken mit GUI

MIA INFORMATIK Scratch Übungen

Aquarium 6. Ein Aquarium soll her. Doch mit wie vielen Fischen? Das entscheidest du.

Aufgabe 4 (Musterlösung) CorelDRAW

Aufgabe 4 (Musterlösung) Corel Draw

< UNTERRICHTSMATERIAL /> Calliope mini. Maulwurfspiel

1) Wie erstelle ich ein neues Programm? 2) Wie füge ich ein neues Objekt hinzu? 3) Wie starte ich mein Programm?

Aufgabe: Versuche zunächst, die Katze von links nach rechts bewegen zu lassen.

Quelle: programmierung/scratch. Wiederholungen. Informatik AG Goetheschule Dieburg Christian Wach

Arbeiten mit Auswahlwerkzeugen

Coole Spiele mit Scratch Lerne programmieren und baue deine eigenen Spiele

< UNTERRICHTSMATERIAL /> Calliope mini. Maulwurfspiel

Schritt für Schritt. Einführung. Welches Ziel haben Sie im Spiel?

SCHLAUER FUßBALL

So gibst du die Richtung mit einem Kompass vor

Königsspiel 67cm/40cm

Unterspiel Inhalt Lernvoraussetzungen Lernziele Schüler. gezielter Maus- oder Tastenklick zum richtigen Zeitpunkt

STADT, LAND, FLUSS PUNKTE STADT LAND FLUSS NAME TIER BERUF PFLANZE SPIELER: Hallo, mein Name ist...

Aufgabe 2 (Musterlösung) CorelDRAW

TinkerCAD Basics. Eine kleine Übersicht über die wichtigsten Funktionen und Möglichkeiten beim 3D-Modellieren mit dem bowserbasierten TinkerCAD.

So funktioniert der Stundenplan Kurzanleitung zur Bedienung der einzelnen Funktionen auf

GerbView. 5. März 2017

Mit dem Format das Thema aufgreifen

Gruppenpuzzle: Bewegung und Zeichnen

Installationsgruppen

Scrollrad (Mausrad) Mauspad

SPIELREGEL HERBST SPIELMATERIAL SPIELAUFBAU. 48 runde Wegekarten. in 4 Arten ( 7 Spielfiguren mit Plastikbasen: 6 Ameisen ( ) und 1 Heuschrecke (

Ökosystem Weiher. Handout

Einführung in die Programmiersprache SCRATCH

Aufgabenblatt 1 Variablen, Operatoren, Verzweigungen

Spielregeln für Schach

Qualifikation zur Logic Masters 2009

Aufgabenblatt 6. Vorbemerkungen. Programmiersprache Java Objektorientierte Programmierung II Sommersemester Mai 2009

Kinematik von Punktmassen. Aufgabe 1. Die durchschnittliche Geschwindigkeit eines Elfmeters im Fußball ist 120 km/h.

Pick and Pack Spielanleitung/Spielregeln. Brettspielnetz.de Team Copyright 2017 Brettspielnetz.de

Markieren Kopieren Einfügen

6in1 Deluxe Spiele-Koffer. Spielanleitung

Mit Hilfe dieser Anleitung erstellen Sie ein Arbeitsblatt und lernen dabei verschiedene Funktionen von Word kennen.

Sicher Rad fahren Regeln und Tipps

Regelwerk für die. Robo-Tec Version vom Jedes Team besteht mindestens aus zwei, maximal aus fünf Mitgliedern.

Kurze Einführung in die Arbeit mit dem Programm EUKLID ( Ac / 2008 )

Schach Spielanleitung/Spielregeln. Brettspielnetz.de Team Copyright 2017 Brettspielnetz.de

Space Shooter. Die Gesteinsbrocken sollen sich von selbst von rechts nach links bewegen.

Fuchs im Hühnerstall ( 1' ) Kolumbus - Inseln erobern ( 1' ) Insel Fangis ( 1' ) Pyramiden Staffette ( 1' )

Brettspiele (Mühlespiel)

HomeServer/ FacilityServer UND Verknüpfung

Thomas Theis. Einstieg in Unity. Rheinwerk Computing

FACTORY LAYOUT & MECHANICAL HANDLING

PC-Lernspiel: V/F. Hier kannst du das Spiel starten und beenden: Hier wechselst du in die Programmieransicht bzw. auf Vollbild.

Schmetterling, flieg!

Der Kurs vermittelt schwerpunktmäßig Grundlagen im Fach Informatik und möchte den Schüler/innen Anwendungen zeigen, die sich mit Hilfe eines PCs

Kerze (Candle)

Computer Schulung WINDOWS 8 / 8.1

Pacman's day. Story-Board: Insperationen: Erscheinungsjahr der einzelnen Spiele:

Eigene Klappkarte in Word erstellen

Grundprinzip von InDesign:

Illustrator CS6. Grundlagen. Jan Götzelmann. 1. Ausgabe, September 2012 ILLCS6

Aufgabenblatt 1 - Variablen, Operatoren, Verzweigungen

Softwareentwicklungspraktikum Nebenfach

Aufgabe Im Quadrat fahren

Halali Spielanleitung/Spielregeln. Brettspielnetz.de Team Copyright 2016 Brettspielnetz.de

3 Mit Programmen und Fenstern

Das Handbuch zu KBounce. Tomasz Boczkowski Korrektur: Eugene Trounev Deutsche Übersetzung: Maren Pakura

BRYCE 5 Mini Anleitung

Projiziertes Zeichnen

C# Programmpaket: Das Grafikpaket

Kalender, Kalender 11

ProtectaGIS erste Schritte

1 - EIN NEUES GAMEGRID ANLEGEN

Objekte zeichnen, formatieren, anordnen

Vektorobjekte auf der Formebene zeichnen. Form-Werkzeug wählen und über die Optionsleiste die Formeigenschaften festlegen

Das Handbuch zu KBreakOut. Fela Winkelmolen Stephanie Whiting Deutsche Übersetzung: Ingo Malchow

1, 2, 3 Addieren und Subtrahieren im Zahlenraum bis 20

Aktivitäten mit dem Roboter Thymio II für die Einführung in die Informatik und Robotik

Aufgabe 1 Erstelle mit Hilfe von GEOGEBRA ein dynamisches Geometrie-Programm, das die Mittelsenkrechte

Fragebogen zur Programmierung mit Aseba / VPL

Aufgabenblatt 1. Kompetenzstufe 2. Allgemeine Informationen zum Aufgabenblatt:

Einfache Animationen in Microsoft Powerpoint (Win 2003) erstellen. 1.) Zunächst wird das Programm Powerpoint geöffnet.

Die Mausbedienung: Bedienung der Maus lernen

Grundlegende Programmierkonzepte: Abläufe mit Wiederholungen (Schleifen)

Aufgabenblatt 1 Variablen, Operatoren, Verzweigungen

Ozobot Challenge-Karten

Erstellen von Flucht- und Rettungsplänen mittels Zusatztool Flucht Rettung Feuerwehr

Transkript:

Aufgabenblatt 4 - Funktionen und Objektorientierung Aufgabe 1 Pumpendes Herz Zeichne die Umrisse eines realistischen Herzens und lasse das Herz pumpen. Die einfachste Variante ist, das Herz einfach kleiner und größer zu skalieren. Vielleicht kannst du aber auch eine Regel finden, die ein realistischeres Pumpen simuliert. Aufgabe 2 Brückenkurs-Quiz Schreibe ein Quiz, bei dem auf dem Bildschirm immer eine Frage und vier mögliche Antworten angezeigt werden. Klickt man auf eine Antwort, wird angezeigt ob diese die richtige war und die nächste Frage erscheint. Zähle dabei mit, wie viele Fragen der Benutzer richtig beantwortet hat und wie viele falsch waren. Als Fragen kannst du Inhalte des Brückenkurses nehmen (z.b. Welches dieser Zeichen ist kein Java-Operator? ). Aufgabe 3 Roboterarm Schreibe ein Processing-Programm, das einen Roboterarm mit vier Gelenken simuliert. Der Benutzer soll den Arm bewegen können, indem er mit den Zahlentasten 1 bis 4 ein Gelenk auswählt und mit den Pfeiltasten die Gelenkstellung ändert (größerer/kleinerer Winkel). Zeichne auch eine kleine Kiste, die der Benutzer mit dem Roboterarm aufheben muss. Hinweis: Am direktesten kannst du den Arm darstellen, wenn du für jedes Segment einfach nur ein Rechteck zeichnest, das mit den Funktionen translate und rotate an die richtige Stelle gebracht wird. Aufgabe 4 Kanonenspiel Schreibe ein Spiel, bei dem der Benutzer mit der Maus eine Kanone ausrichten und mit einem Klick abfeuern kann. Ziel des Spiels ist es, eine Zielscheibe zu treffen. Du kannst das Spiel noch Aufgabenblatt 4 - Funktionen und Objektorientierung 1/ 7

interessanter machen, indem du z.b. das Ziel sich bewegen lässt oder Wind einbaust, der sich bei jedem Schuss wieder ändert. Hinweis: Die Kanonenkugel bekommt von der Kanone eine Initialgeschwindigkeit. Ab diesem Zeitpunkt wird diese Geschwindigkeit nur noch von der Gravitation beeinflusst (Beschleunigung nach unten). Aufgabe 5 Netzwerksimulation Schreibe eine kleine einfache Simulation eines Netzwerks aus mehreren Rechnern. Du kannst die Rechner einfach als Rechtecke darstellen, die mit Linien verbunden sind. Zwischen den Rechnern sollen Nachrichten als kleine Kreise hin und her wandern können. Stelle zunächst einen einfachen Ping zwischen zwei Rechnern dar: Der erste Rechner schickt eine Anfrage und der zweite Rechner antwortet auf diese Anfrage. Wenn du dieses Programm mit Funktionen und Klassen strukturierst, wird es dir sicher leicht möglich sein, größere Netzwerke zu simulieren. Vielleicht kannst du sogar einen TCP-Handschake (SYN, SYN-ACK, ACK) darstellen? Aufgabe 6 Räuber-Beute-Simulation Programmiere eine einfache Räuber-Beute-Simulation. Teile dazu den Anzeigebereich in ein Gitter ein, auf dem sich Beutetiere und Räuber bewegen können. Sowohl Raubtiere als auch Beutetiere können sich pro Schritt um ein Feld vorwärts bewegen. Beutetiere müssen Nahrung finden und fressen, um sich dann vermehren zu können. Räuber müssen Beutetiere fressen und vermehren sich langsamer als die Beutetiere. Du kannst für eine einfache Simulation einfach zufällig Nahrung, Räuber und Beute in den Gitterfeldern verteilen und Räuber- und Beutetiere sich zufallsgesteuert bewegen lassen. Du kannst aber natürlich danach auch versuchen, den Tieren noch ein wenig mehr Intelligenz mit auf den Weg zu geben. Aufgabenblatt 4 - Funktionen und Objektorientierung 2/ 7

Aufgabe 7 Ampelschaltung Simuliere eine Kreuzung auf der Autos von allen Richtungen zufahren. Du kannst dabei annehmen, dass alle Autos nur geradeaus fahren und niemals abbiegen. Kollisionen sollen dabei kenntlich gemacht werden. Füge jetzt im nächsten Schritt eine Ampel an der Kreuzung ein und baue die Ampelschaltung so, dass keine Unfälle mehr entstehen. Kannst du das Programm noch erweitern, so dass manche Autofahrer doch abbiegen können? Aufgabe 8 Aufzug Simuliere einen Aufzug in einem Hochhaus. Der Benutzer soll in jedem Stockwerk auf einen Knopf drücken können, um den Aufzug zu rufen. Was macht der Aufzug, wenn er zu mehreren Stockwerken gleichzeitig gerufen wird? Wenn du möchtest, kannst du auch kleine Strichmännchen animieren, die den Aufzug betreten und verlassen. Aufgabe 9 Hau den Maulwurf Programmiere eine Variante des Spiels Hau den Maulwurf, bei dem Maulwürfe oder andere schlagenswerte Figuren aus Löchern im Boden auftauchen und der Benutzer sie schnell genug durch klicken der Maustaste treffen muss. Aufgabe 10 Taschenrechner Programmiere einen voll funktionstüchtigen Taschenrechner. Kannst du es schaffen, dass man das Gefühl hat, die Tasten werden wirklich nach unten gedrückt, wenn man mit der Maus darauf klickt? Aufgabe 11 Förderband Programmiere ein Förderband, auf das der Benutzer per Drag&Drop kleine Kisten legen kann. Es reicht dabei aus, wenn das Förderband nur aus horizontalen und vertikalen Streifen zusammengesetzt ist. Aufgabenblatt 4 - Funktionen und Objektorientierung 3/ 7

Aufgabe 12 Paprikafarm Programmiere ein Bewässerungssystem für eine spanische Paprikafarm. Stelle die Pflanzen grafisch dar zusammen mit einem Feuchtigkeitsmessstab. Mit der Zeit sollen die Paprika langsam austrocknen. Das Bewässerungssystem soll dafür sorgen, dass immer genug Wasser vorhanden ist, aber auch nicht zu viel. Programmiere Warnungsmeldungen für beide Fälle ein und implementiere dann das Bewässerungssystem selbst. Es wäre allerdings natürlich ineffizient, das System ständig für ganz kurze Zeitspannen anspringen zu lassen. Baue daher auch einen zeitlichen Mindestabstand zwischen zwei Bewässerungsphasen ein. Aufgabe 13 Verbrennungsmotor Simuliere grafisch die Funktionsweise eines typischen Viertakt-Ottomotors. Aufgabe 14 Türme von Hanoi Das Spiel Die Türme von Hanoi basiert auf einfachen regeln. Es gibt drei Stangen, wobei auf der ersten Stange mehrere Scheiben mit einem Loch in der Mitte aufeinandergestapelt sind. Die Scheiben haben unterschiedliche größe, wobei die größte Scheibe immer unten liegt. Der Spieler muss alle Scheiben vom Startstapel (links) auf den rechten Stapel legen. Dabei kann er immer nur die oberste Scheibe von einem Stapel aufnehmen und darf nie eine größere Scheibe auf eine kleinere legen. Programmiere dieses Spiel, indem der Benutzer jeweils auf den Stapel klicken kann von dem er eine Scheibe nehmen kann, um dann auf den Stapel zu klicken, wo er sie ablegen möchte. Aufgabe 15 Minigolf Programmiere ein Minigolfspiel. Es reicht dazu, wenn du die Ränder von Hindernissen als Linien darstellst und in jedem Schritt prüfst ob diese den Ball berühren. Ist dies der Fall, prallt der Ball an der Wand im gleichen Winkel ab, mit dem er aufgetroffen ist. Aufgabe 16 Logische Schaltkreise Simuliere einen logischen Schaltkreis, indem du die folgenden Elemente (sinnvollerweise als Klassen) definierst. Ein Taktgeber, dessen Ausgang bei einem Rechtsklick von 0 zu 1 und bzw. umgekehrt von 1 zu 0 wechselt. Ein Schalter, den der Benutzer durch Linksklick mit der Maus an und ausschalten kann. Aufgabenblatt 4 - Funktionen und Objektorientierung 4/ 7

Ein NOT-Gatter, das den Eingabewert umkehrt. Ein AND-Gatter, das nur 1 ausgibt, wenn beide Eingänge den Wert 1 haben. Sonst ist die Ausgabe 0. Ein OR-Gatter, das nur 0 ausgibt, wenn beide Eingänge den Wert 0 haben. Sonst ist die Ausgabe 1. Ein Eingabesignal, das dauerhaft entweder 1 oder 0 ausgibt. Jedes dieser Elemente soll grafisch dargestellt werden, wobei Verbindungen, die den Wert 1 haben, rot markiert werden sollen. Kannst du auf diese Weise einen Schaltkreis bauen, der zwei 3-Bit zahlen addiert? Aufgabe 17 Labyrinth Schreibe ein Spiel, bei dem man sich mit einer Figur durch ein Labyrinth bewegen und den Ausgang suchen muss. Um das Spiel interessanter zu machen, kannst du auch noch Gegner einbauen und Objekte, die man aufsammeln kann ähnlich wie bei Pacman. Aufgabe 18 Schwarmverhalten Das Schwarmverhalten von Vögeln oder Fischen lässt sich mit drei erstaunlich einfachen Regeln simulieren, denen jedes Individuum folgt: Kohäsion: Bewege dich in Richtung des Zentrums deiner Nachbarn. Separation: Bewege dich weg, wenn dir jemand zu nahe kommt. Alignment: Bewege dich etwa in die selbe Richtung wie deine Nachbarn. Simuliere basierend auf diesen Regeln einen Schwarm. Aufgabenblatt 4 - Funktionen und Objektorientierung 5/ 7

Aufgabe 19 Space Invaders Programmiere ein Spiel bei dem der Spieler mit einem Raumschiff durchs Weltall fliegt und aus der Vogelperspektive Sterne an sich vorbei fliegen sieht. Setze dann gegnerische Raumschiffe in die Welt ein, denen man ausweichen muss und die man selbst abschießen kann. Aufgabe 20 Snake Programmiere das Spiel Snake nach. Dabei bewegt sich eine Schlange auf einem Raster in horizontaler bzw. vertikaler Richtung. Der Spieler kann die Richtung mit den Pfeiltasten wechseln und muss Futter aufsammeln, was die Schlange jedes mal um ein Kästchen größer werden lässt. Trifft der Spieler dabei den Schwanz der Schlange oder die Wand, hat er das Spiel verloren. Aufgabe 21 Schiffe Versenken Programmiere das Spiel Schiffe versenken. Zeige dabei abwechselnd den Spielzustand für Spieler 1 und für Spieler 2 wenn der jeweilige Spieler an der Reihe ist. Es muss möglich sein auf einem zweidimensionalen Feld Schiffe von unterschiedlicher Größe zu platzieren und dann durch Mausklick auf einzelne Positionen zu feuern, wobei immer angezeigt wird ob man ein gegnerisches Schiff getroffen hat oder nicht. Aufgabe 22 Mastermind Mastermind ist ein bekanntes Knobelspiel. Es geht dabei darum, eine Kombination von vier farbigen Kugeln zu erraten. Der Mastermind wählt sich eine Kombination und der Gegenspieler versucht in jedem Zug diese Kombination zu erraten. Der Mastermind muss seinem Gegner dabei wahrheitsgemäß sagen, wie viele Kugeln eine Farbe haben, die in der gesuchten Kombination vorkommt und wie viele Kugeln tatsächlich völlig richtig platziert wurden (Farbe und Position). Programmiere das Spiel nach, wobei der Rechner die Rolle des Mastermind übernimmt. Aufgabe 23 Zombieepidemie Simuliere den Ausbruch einer Zombieepidemie. Platziere dazu Menschen an zufälligen Positionen, die sich frei in zufällige Richtungen bewegen können. Durch einen Mausklick kann der Benutzer Aufgabenblatt 4 - Funktionen und Objektorientierung 6/ 7

beliebige Menschen infizieren und sie zu Zombies machen. Zombies bewegen sich auch zufällig - außer sie sehen einen Menschen in ihrer Nähe, dann bewegen sie sich direkt auf ihn zu und versuchen ihn zu beißen. Du kannst bei einem Kampf von Mensch und Zombie eine Wahrscheinlichkeit dafür einbauen, dass der Mensch gebissen wird oder dass er den Zombie töten kann. Hinweis: Am schönsten sieht die Bewegung der Figuren aus, wenn du die Fortbewegungsgeschwindigkeit von der Richtung der Fortbewegung trennst und nur die Richtung zufällig veränderst. Aufgabenblatt 4 - Funktionen und Objektorientierung 7/ 7