Programmieraufgabe
Programmieraufgaben im Informatikunterricht sind sind zumeist unabhängig von der Programmiersprache verwendbar.
Hier sind einige Ideen für Programmieraufgaben genannt. Weitere Ideen dürfen gerne ergänzt werden.
Übungen zu algorithmischen Grundelementen
Ein- und Ausgabe von Text/Zahlen
- Hallo-Welt-Programm - Babylonische Sprachverwirrung in der Ausgabe
- mit Variablen: "Hallo Benutzer" - mit Benutzereingabe in Textvariable
- JavaScript/Cäsar Chiffre
Variablen
- x um 1 erhöhen (x=x+1) - Unterschied Mathe - Informatik
- Typkonvertierungen
if-Abfrage
- Mini-Quiz mit fester Anzahl an Fragen
- Berechnung der Lösungen von quadratischen Gleichungen mittels pq-Formel
- Mittels zweier if-Abfragen wird festgestellt, wie viele Lösungen die Geichungen hat und diese dann ausgegeben.
Schleifen
1
Lasse von
- -100 bis 100 zählen,
- nur gerade,
- nur ungerade Zahlen,
- Mit Modulo (benötigt if, Modulo oder Runden): Zahlenzensur: immer wenn eine Zahl durch 7 teilbar ist, soll PIEP statt der Zahl auf dem Bildschirm erscheinen (Hinweis: Setze % ein oder lasse eine zweite Variable immer bis 7 zählen).
2
Schreibe ein Programm, das dich solange nach der Geheimzahl „123“ fragt, bis sie richtig eingegeben wird. Dann soll auf dem Bildschirm erscheinen: Tresor ist geöffnet.
3
Gebe von 1 bis zu einer einzugebenden Zahl n alle natürlichen Zahlen und
- Ihre Quadrate – (Zahl mit sich selbst multiplizieren! 1,4,9,16…)
- Ihre Zweierpotenzen – ( 2,4,8,16,32…)
- Ihre Fakultät (1, 1*2, 1*2*3, 1*2*3*4, …)
aus.
4 Uhrsimulation: Verschachtelte Schleifen
Teilbarkeit und Primzahl
Benötigt Schleifen, Abfragen und abrunden bzw. Modulo
- Teilbarkeit prüfen
- Primzahlen bestimmen
- Alle Teiler einer Zahl
- ggT und kgV bestimmen
- Eukl. Algorithmus
Große Zahlen
Thematisieren: Überlauf und Genauigkeit
- Wer wird Millionär: Zinseszins bis 1 Mio. Euro per Schleife (oder die Abwärtsspirale bei nicht bezahlter Handyrechnung)
- Schachbrettaufgabe: Verdoppeln einer Grundzahl nach Schachbrettreislegende
Schleife und Zufallszahl (Würfelbecheraufgaben)
Lasse aus 100 x-Werten auszählen, wie oft die 6 vorkam. Wie oft kamen die anderen Zahlen vor?
Lasse solange x ausgeben, bis 10-mal die 6 gefallen ist.
Schreibe den "Paschbestimmer". Du benötigst dazu einen zweiten Würfel.
Er soll entweder: Kein Pasch oder Pasch ausgeben.
Stochastische Feststellung: Kommt die 7 wirklich am häufigsten vor?
Wenn man mit 2 Würfeln würfelt, so tritt die 7 am häufigsten auf.
Wie oft tritt welche Zahl auf, wenn man 100 mal würfelt?
Spiele
- Dart: 301 Herunterzählautomat
- Lunar Lander
Kleine Projekte
- Roulette: Sichere Strategie?! Es wird nur auf Farbe gesetzt. Man verliert nie, wenn man bei jeder Runde, in der man verloren hat, den Einsatz verdoppelt, um so beim ersten richtigen Tipp dann mit dem gewonnenen Geld nach Hause geht. Zeigen Sie: Mit beliebig viel Geld ist man immer irgendwann pleite, wenn man diese Strategie verfolgt. Fachübergreifend: Gesetz der großen Zahlen (Mathe).
Funktionen
...
Rekursion
...
Idee
Rundkurs
Aufgabe: Zeichne ein "Objekt" und einen "Rundkurs". Erstelle ein Script, das dein Objekt über den Rundkurs bewegt, ohne diese zu verlassen.
Diese Aufgabe kann man z.B. in etwa 3-4 Schulstunden mit blutigen Anfängern (Jahrgangsstufe 5) lösen, wobei die erste Stunde schon mal mit Erkärung/Erforschen der Oberfläche und Malen der Objekte vergeht.
Übungen
Im Folgenden werden mögliche Aufgaben beschrieben, nach denen man eine Unterrichtsreihe ausrichten kann.
- Aufgaben
- Ein- & Ausgabe, Variablen: Hallo Welt, (Variablen), Hallo Benutzername, Addieren zweier Werte, ...
- Variablentypen boolean und integer: Zuweisungen und Ausgaben mit boolean. Wann welche Variable?, ...
- if: Teilbarkeit prüfen (mit MOD), BodyMassIndex, ...
- while: Solange eine bestimmte Zahl nicht genannt ist, fortsetzen; Endlosschleifen und Verhalten des Computers (inkl. Taskmanager), Grafische Spielereien
- Die Schleifen im Vergleich, Primzahlenbestimmung
- Kleines Programmierprojekt mit Einzelprozeduren.
Turtle-Grafik
Weblinks
- Eine große Sammlung zu Programmiersprachen unabhängigen Aufgaben (vor allem zu obigen Themen) finden wir auf der Seite Programmieren lernen die zum gleichnamigen Buch ISBN 978-3-280-04066-9 erschienen ist.
- Unter trainyourprogrammer.de werden viele Programmieraufgaben mit Lösungen zum Üben angeboten. Jeder kann seine Lösungen hochladen und mit anderen Lösungen vergleichen.