Programmieraufgabe: Unterschied zwischen den Versionen
K (39 Versionen importiert) |
(l) Markierung: 2017-Quelltext-Bearbeitung |
||
(Eine dazwischenliegende Version desselben Benutzers wird nicht angezeigt) | |||
Zeile 7: | Zeile 7: | ||
===Ein- und Ausgabe von Text/Zahlen=== | ===Ein- und Ausgabe von Text/Zahlen=== | ||
* {{wpde|Hallo-Welt-Programm}} - Babylonische Sprachverwirrung in der Ausgabe | *{{wpde|Hallo-Welt-Programm}} - Babylonische Sprachverwirrung in der Ausgabe | ||
* mit Variablen: "Hallo Benutzer" - mit Benutzereingabe in Textvariable | *mit Variablen: "Hallo Benutzer" - mit Benutzereingabe in Textvariable | ||
*[[JavaScript/Cäsar Chiffre]] | |||
===Variablen=== | ===Variablen=== | ||
* x um 1 erhöhen (x=x+1) - Unterschied Mathe - Informatik | *x um 1 erhöhen (x=x+1) - Unterschied Mathe - Informatik | ||
* Typkonvertierungen | *Typkonvertierungen | ||
===if-Abfrage=== | ===if-Abfrage=== | ||
Zeile 20: | Zeile 20: | ||
*Mini-Quiz mit fester Anzahl an Fragen | *Mini-Quiz mit fester Anzahl an Fragen | ||
*Berechnung der Lösungen von quadratischen Gleichungen mittels pq-Formel | *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. | ::Mittels zweier if-Abfragen wird festgestellt, wie viele Lösungen die Geichungen hat und diese dann ausgegeben. | ||
===Schleifen=== | ===Schleifen=== | ||
{{ | {{Aufgabe|'''1''' | ||
Lasse von | Lasse von | ||
# -100 bis 100 zählen, | # -100 bis 100 zählen, | ||
Zeile 32: | Zeile 34: | ||
}} | }} | ||
{{ | {{Aufgabe|'''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. | 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. | ||
}} | }} | ||
{{ | {{Aufgabe|'''3''' | ||
Gebe von 1 bis zu einer einzugebenden Zahl n alle natürlichen Zahlen und | 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 Quadrate – (Zahl mit sich selbst multiplizieren! 1,4,9,16…) | ||
Zeile 44: | Zeile 48: | ||
}} | }} | ||
{{ | {{Aufgabe|'''4''' | ||
Uhrsimulation: Verschachtelte Schleifen | Uhrsimulation: Verschachtelte Schleifen | ||
}} | }} | ||
Zeile 51: | Zeile 55: | ||
Benötigt Schleifen, Abfragen und abrunden bzw. Modulo | Benötigt Schleifen, Abfragen und abrunden bzw. Modulo | ||
* Teilbarkeit prüfen | |||
* Primzahlen bestimmen | *Teilbarkeit prüfen | ||
* Alle Teiler einer Zahl | *Primzahlen bestimmen | ||
* ggT und kgV bestimmen | *Alle Teiler einer Zahl | ||
* Eukl. Algorithmus | *ggT und kgV bestimmen | ||
*Eukl. Algorithmus | |||
====Große Zahlen==== | ====Große Zahlen==== | ||
Thematisieren: Überlauf und Genauigkeit | 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 | *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)==== | ====Schleife und Zufallszahl (Würfelbecheraufgaben)==== | ||
{{ | {{Aufgabe| | ||
Lasse so lange die aktuellen x-Werte auf dem Bildschirm ausgeben, bis die 6 gefallen ist. Lasse am Ende anzeigen, wie oft gewürfelt wurde.}} | Lasse so lange die aktuellen x-Werte auf dem Bildschirm ausgeben, bis die 6 gefallen ist. Lasse am Ende anzeigen, wie oft gewürfelt wurde.}} | ||
{{ | {{Aufgabe| | ||
Lasse aus 100 x-Werten auszählen, wie oft die 6 vorkam. Wie oft kamen die anderen Zahlen vor? | Lasse aus 100 x-Werten auszählen, wie oft die 6 vorkam. Wie oft kamen die anderen Zahlen vor? | ||
}} | }} | ||
{{ | {{Aufgabe| | ||
Lasse solange x ausgeben, bis 10-mal die 6 gefallen ist. | Lasse solange x ausgeben, bis 10-mal die 6 gefallen ist. | ||
}} | }} | ||
{{ | {{Aufgabe| | ||
Schreibe den "Paschbestimmer". Du benötigst dazu einen zweiten Würfel. | Schreibe den "Paschbestimmer". Du benötigst dazu einen zweiten Würfel. | ||
Zeile 82: | Zeile 88: | ||
}} | }} | ||
{{ | {{Aufgabe| | ||
Stochastische Feststellung: Kommt die 7 wirklich am häufigsten vor? | Stochastische Feststellung: Kommt die 7 wirklich am häufigsten vor? | ||
Zeile 92: | Zeile 98: | ||
====Spiele==== | ====Spiele==== | ||
* Dart: 301 Herunterzählautomat | *Dart: 301 Herunterzählautomat | ||
* Lunar Lander | *Lunar Lander | ||
====Kleine Projekte==== | ====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). | *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=== | ===Funktionen=== | ||
Zeile 106: | Zeile 112: | ||
... | ... | ||
== Idee == | ==Idee== | ||
=== Rundkurs === | ===Rundkurs=== | ||
{{Idee| | {{Idee| | ||
Aufgabe: Zeichne ein "Objekt" und einen "Rundkurs". Erstelle ein Script, das dein Objekt über den Rundkurs bewegt, ohne diese zu verlassen. | Aufgabe: Zeichne ein "Objekt" und einen "Rundkurs". Erstelle ein Script, das dein Objekt über den Rundkurs bewegt, ohne diese zu verlassen. | ||
Zeile 126: | Zeile 132: | ||
==Turtle-Grafik== | ==Turtle-Grafik== | ||
*[[Turtle-Grafik]] | |||
* [[JavaScript/Von-Neumann-Rechner-Simulation]] | *[[JavaScript/Von-Neumann-Rechner-Simulation]] | ||
== Weblinks == | ==Weblinks== | ||
* Eine große Sammlung zu Programmiersprachen unabhängigen Aufgaben (vor allem zu obigen Themen) finden wir auf der Seite [http://www.programmieren-lernen.ch Programmieren lernen] die zum [http://www.ofv.ch/index.php?&ID=bkDet&nr=14505 gleichnamigen Buch] ISBN 978-3-280-04066-9 erschienen ist. | *Eine große Sammlung zu Programmiersprachen unabhängigen Aufgaben (vor allem zu obigen Themen) finden wir auf der Seite [http://www.programmieren-lernen.ch Programmieren lernen] die zum [http://www.ofv.ch/index.php?&ID=bkDet&nr=14505 gleichnamigen Buch] ISBN 978-3-280-04066-9 erschienen ist. | ||
* Unter [http://trainyourprogrammer.de/ trainyourprogrammer.de] werden viele Programmieraufgaben mit Lösungen zum Üben angeboten. Jeder kann seine Lösungen hochladen und mit anderen Lösungen vergleichen. | *Unter [http://trainyourprogrammer.de/ trainyourprogrammer.de] werden viele Programmieraufgaben mit Lösungen zum Üben angeboten. Jeder kann seine Lösungen hochladen und mit anderen Lösungen vergleichen. | ||
== Siehe auch == | ==Siehe auch== | ||
*[[Programmiersprache]] | |||
*[[Programmierlernumgebung]] | |||
* [[Programmiersprache]] | |||
* [[ | |||
[[Kategorie:Informatik]] | [[Kategorie:Informatik]] | ||
[[Kategorie: | [[Kategorie:Programmierlernumgebung]] | ||
[[Kategorie:Programmiersprache]] | [[Kategorie:Programmiersprache]] | ||
[[Kategorie:Unterrichtsidee]] | [[Kategorie:Unterrichtsidee]] |
Aktuelle Version vom 4. Mai 2022, 16:50 Uhr
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.