CleverRaten: Unterschied zwischen den Versionen

Aus microbit - Das Schulbuch
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Martin.teufel (Diskussion | Beiträge)
 
(6 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
== [[Datei:Icon_story.png|20px|Icon]] Raten, aber richtig! ==
== [[Datei:Icon_story.png|20px|Icon]] Raten, aber richtig! ==


[[Datei:CleverRaten.jpg|right|400px|borderless|Clever raten!]]
[[Datei:Clever Raten.png|right|600px|borderless|Clever raten!]]
Neulich, zuhause, nach der Schule:
Neulich, zuhause, nach der Schule:
: „Weißt du was, Jakob? Wir haben heute in Informatik was voll Cooles gelernt. Das kann man auch wo anders gut brauchen.“
: „Weißt du was, Jakob? Wir haben heute in Informatik was voll Cooles gelernt. Das kann man auch wo anders gut brauchen.“
:: „Was Cooles? In Informatik? Was soll das sein?“
:: „Was Cooles? In Informatik? Was soll das sein?“
: „Hmmm, ok, machen wir mal ein kleines Ratespiel. Denk dir eine Zahl aus von 1 bis 100 aus und ich wette mit dir um das nächste Staubsaugen in der ganzen Wohnung, dass ich höchstens 7 mal raten muss um deine Zahl heraus zu finden! Du musst mir nur jedesmal - ehrlich - sagen, ob deine Zahl höher oder niedriger ist, ok?“
: „Hmmm, ok, machen wir mal ein kleines Ratespiel. Denk dir eine Zahl von 1 bis 100 aus und ich wette mit dir um das nächste Staubsaugen in der ganzen Wohnung, dass ich höchstens 7-mal raten muss, um deine Zahl herauszufinden! Du musst mir nur jedesmal — ehrlich — sagen, ob deine Zahl höher oder niedriger ist, ok?“
:: „Die Wette gilt Lea, das schaffst du nie! Viel Spaß beim Staubsaugen ...“
:: „Die Wette gilt Lea, das schaffst du nie! Viel Spaß beim Staubsaugen ...“
: „Und das ganze mache ich mit dem kleinen Computer, damit du nicht glaubst, ich schummle. Ich schreibe ein kleines Programm: Du siehst eine Zahl am Bildschirm. Wenn deine Zahl größer ist neigst du den micro:bit einmal kurz nach rechts, wenn deine kleiner ist, dann einmal kurz nach links. Wenn die Zahl stimmt, drückst du gleichzeitig auf A und B, dann zeigt es dir an, wie oft geraten wurde, ok?“
: „Und das Ganze mache ich mit dem kleinen Computer, damit du nicht glaubst, ich schummle. Ich schreibe ein kleines Programm: Du siehst eine Zahl am Bildschirm. Wenn deine Zahl größer ist, neigst du den micro:bit einmal kurz nach rechts, wenn deine kleiner ist, dann einmal kurz nach links. Wenn die Zahl stimmt, drückst du gleichzeitig auf A und B, dann zeigt es dir an, wie oft geraten wurde, ok?“
:: „Na dann mach mal ...“
:: „Na dann mach mal ...“


== [[Datei:icon_gluehbirne.png|20px|Icon]] Anforderungen ==
== [[Datei:icon_gluehbirne.png|20px|Icon]] Aufgabenstellung ==


Wenn man Lea und Jakob genau zuhört, weiß man, was alles gemacht werden muss. Versuche erst einmal, selbst herauszufinden, was zu tun ist. Was genau soll das Programm können? Wann soll was genau passieren?
Wenn man Lea und Jakob genau zuhört, weiß man, was alles gemacht werden muss. Versuche erst einmal, selbst herauszufinden, was zu tun ist. Was genau soll das Programm können? Wann soll was genau passieren?
Zeile 17: Zeile 17:
* Wird der micro:bit nach links geneigt, soll beim nächsten Mal eine kleinere Zahl geraten werden
* Wird der micro:bit nach links geneigt, soll beim nächsten Mal eine kleinere Zahl geraten werden
* Wird der micro:bit nach rechts geneigt, soll beim nächsten Mal eine größere Zahl geraten werden
* Wird der micro:bit nach rechts geneigt, soll beim nächsten Mal eine größere Zahl geraten werden
* Werden die Tasten A und B gemeinsam gedrückt, bedeutet das, dass die Zahle erraten wurde und die Anzahl der Rateversuche wird ausgegeben
* Werden die Tasten A und B gemeinsam gedrückt, bedeutet das, dass die Zahl erraten wurde, und die Anzahl der Rateversuche wird ausgegeben
</spoiler>
</spoiler>


== [[Datei:icon_material.png|20px|Icon]] Mögliche Materialliste ==
== [[Datei:icon_material.png|20px|Icon]] Materialien ==


* Micro:bit
* BBC micro:bit
* Staubsauger für den Verlierer oder die Verliererin beim Ratespiel ...</spoiler>
* Optional: Staubsauger für den Verlierer oder die Verliererin beim Ratespiel ...


== [[Datei:icon_sanduhr.png|20px|Icon]] Zeitaufwand ==
== [[Datei:icon_sanduhr.png|20px|Icon]] Zeitaufwand ==


* Zwei Schulstunden zum Entwickeln des Programms und mehrmaligem Ausprobieren
* Zwei Schulstunden zum Entwickeln des Programms und für das mehrmalige Ausprobieren


== [[Datei:Icon_puzzle3.png|20px|Icon]] Schwierigkeitsgrad ==
== [[Datei:Icon_puzzle3.png|20px|Icon]] Schwierigkeitsgrad ==
Zeile 34: Zeile 34:
== [[Datei:Icon_brain.png|20px|Icon]] Kompetenzen ==
== [[Datei:Icon_brain.png|20px|Icon]] Kompetenzen ==


Du lernst ...
Du lernst
* ... vernetztes und fachübergreifendes Denken
* vernetztes und fachübergreifendes Denken
* ... Formulieren und Kodieren von Abläufen in formalen Algorithmen
* das Formulieren und Kodieren von Abläufen in formalen Algorithmen
* ... Berechnung eines arithmetischen Mittelwertes
* die Berechnung eines arithmetischen Mittelwertes


== [[Datei:Icon faecher.png|20px|Icon]] Unterrichtsfächer ==
== [[Datei:Icon faecher.png|20px|Icon]] Unterrichtsfächer ==
INF, M
Informatik, Mathematik


== [[Datei:Icon_hilfe.png|20px|Icon]] Tipps und Hilfestellung ==
== [[Datei:Icon_hilfe.png|20px|Icon]] Tipps und Hilfestellungen ==


* Um garantieren zu können, maximal sieben Versuche zu benötigen, müssen wir geschickt raten, ''nicht'' bei jedem Versuch einfach eine zufällige Zahl von 1 bis 100.
* Um garantieren zu können, maximal sieben Versuche zu benötigen, müssen wir geschickt raten, ''nicht'' bei jedem Versuch einfach eine zufällige Zahl von 1 bis 100.
* Der Trick ist, den Ratebereich durch den Hinweis "größer" oder "kleiner", von Versuch zu Versuch ''möglichst viel'' kleiner werden zu lassen.
* Der Trick ist, den Ratebereich durch den Hinweis „größer“ oder „kleiner“ von Versuch zu Versuch ''möglichst viel'' kleiner werden zu lassen.
* Überlege, welche Zahl man geschickter Weise beim ersten Versuch rät, damit gleich möglichst viele Zahlen wegfallen. Wo liegt diese Zahl im Bereich von 1 bis 100? Welche Information erhalte ich als Ratende_r durch den Hinweis zum Beispiel "kleiner"? Wie schränkt sich mein Ratebereich ("von ... bis") damit ein? Welche Zahl nimmt man beim zweiten Versuch? Wo liegt diese?
* Überlege, welche Zahl man beim ersten Versuch rät, damit gleich möglichst viele Zahlen wegfallen. Wo liegt diese Zahl im Bereich von 1 bis 100? Welche Information erhalte ich als Ratende bzw. Ratender durch den Hinweis zum Beispiel „kleiner“? Wie schränkt sich mein Ratebereich („von ... bis“) damit ein? Welche Zahl nimmt man beim zweiten Versuch? Wo liegt diese?
* Versuche, durch [[Variablen]] die jeweils aktuellen Rategrenzen "von" und "bis" zu speichern. Diese können nach jedem Versuch mit den sich ändernden Grenzen überschrieben werden, da ich die vorhergehenden nicht mehr benötige!
* Versuche durch [[Variablen]] die jeweils aktuellen Rategrenzen „von“ und „bis“ zu speichern. Diese können nach jedem Versuch mit den sich ändernden Grenzen überschrieben werden, da ich die vorhergehenden nicht mehr benötige!
* Wie kann die Zahl die man in jeder Runde rät, aus den Werten "von" und "bis" berechnet werden?
* Wie kann die Zahl, die man in jeder Runde rät, aus den Werten „von“ und „bis“ berechnet werden?
* Eine elegante Möglichkeit ist, eine zentrale [[Funktionen|Funktion]] zu definieren, die eine Zahl im aktuell gültigen Bereich ("von", "bis") berechnet und am Bildschirm ausgibt. Diese Funktion kann dann von den Ereignissen "nach links neigen" und "nach rechts neigen" aus aufgerufen werden, nach dem ein neuer Ratebereich festgelegt worden ist.
* Eine elegante Möglichkeit ist, eine zentrale [[Funktionen|Funktion]] zu definieren, die eine Zahl im aktuell gültigen Bereich („von“, „bis“) berechnet und am Bildschirm ausgibt. Diese Funktion kann dann von den Ereignissen „nach links neigen“ und „nach rechts neigen“ aus aufgerufen werden, nachdem ein neuer Ratebereich festgelegt worden ist.


Weitere Infos, Hinweise und auch eine mögliche, komplette Lösung findest du auf der [[CleverRaten_Lösung|Lösungsseite zu diesem Beispiel]]
Weitere Infos, Hinweise und auch eine mögliche, komplette Lösung findest du auf der [[CleverRaten_Lösung|Lösungsseite zu diesem Beispiel]].


== Reflexion ==
== Präsentation und Reflexion ==


# Stelle dein Ergebnis vor! Was kann dein Projekt?
# Stelle dein Ergebnis vor!
# Was hat dir bei der Entwicklung deines Produkts gefallen?
# Was hat dir bei der Entwicklung deines Produkts gefallen?
# Welche Schwierigkeiten hast du gehabt? Wie konntest du sie lösen?
# Welche Schwierigkeiten hattest du? Wie konntest du sie lösen?
# Erläutere, wie du Programm aussieht!
# Erläutere, wie dein Programm aussieht!
# Was war bei dieser Aufgabenbearbeitung interessant für dich?
# Was war bei dieser Aufgabe interessant für dich?
# Wieso werden maximal 7 Versuche benötigt, wenn man '''gut''' rät, und nicht mehr? Überlege dazu, wie sich Anzahl der Zahlen die es sein können, pro Versuch ändert. Zuerst 100, nach dem ersten Mal raten nur mehr ... nach dem zweiten Mal raten bleiben noch ... usw.
# Wieso werden maximal 7 Versuche benötigt, wenn man '''gut''' rät, und nicht mehr? Überlege dazu, wie sich die Anzahl der Zahlen die es sein können, pro Versuch ändert. Zuerst 100, nach dem ersten Mal raten nur mehr ... nach dem zweiten Mal raten bleiben noch ... usw.
# Schreibt eure Vornamen jeweils auf einen Zettel. Sammelt die Zettel ein und sortiert sie alphabetisch auf einem Stapel. Versuche diesen Algorithmus einmal dafür einzusetzen, in diesem Stapel von Vornamen, einen bestimmen zu finden. Wie gehst du dabei vor?
# Schreibt eure Vornamen jeweils auf einen Zettel. Sammelt die Zettel ein und sortiert sie alphabetisch auf einem Stapel. Versuche diesen Algorithmus einmal dafür einzusetzen, in diesem Stapel von Vornamen einen bestimmten zu finden. Wie gehst du dabei vor?
# Recherchiere im Internet nach dem Begriff der "binären Suche" und finde heraus, wofür diese binäre Suche eingesetzt werden kann!
# Recherchiere im Internet nach dem Begriff der „binären Suche“ und finde heraus, wofür diese binäre Suche eingesetzt werden kann!
 
<htmlet>makecode_embed</htmlet>

Aktuelle Version vom 17. Mai 2022, 07:55 Uhr

Icon Raten, aber richtig!

Clever raten!
Clever raten!

Neulich, zuhause, nach der Schule:

„Weißt du was, Jakob? Wir haben heute in Informatik was voll Cooles gelernt. Das kann man auch wo anders gut brauchen.“
„Was Cooles? In Informatik? Was soll das sein?“
„Hmmm, ok, machen wir mal ein kleines Ratespiel. Denk dir eine Zahl von 1 bis 100 aus und ich wette mit dir um das nächste Staubsaugen in der ganzen Wohnung, dass ich höchstens 7-mal raten muss, um deine Zahl herauszufinden! Du musst mir nur jedesmal — ehrlich — sagen, ob deine Zahl höher oder niedriger ist, ok?“
„Die Wette gilt Lea, das schaffst du nie! Viel Spaß beim Staubsaugen ...“
„Und das Ganze mache ich mit dem kleinen Computer, damit du nicht glaubst, ich schummle. Ich schreibe ein kleines Programm: Du siehst eine Zahl am Bildschirm. Wenn deine Zahl größer ist, neigst du den micro:bit einmal kurz nach rechts, wenn deine kleiner ist, dann einmal kurz nach links. Wenn die Zahl stimmt, drückst du gleichzeitig auf A und B, dann zeigt es dir an, wie oft geraten wurde, ok?“
„Na dann mach mal ...“

Icon Aufgabenstellung

Wenn man Lea und Jakob genau zuhört, weiß man, was alles gemacht werden muss. Versuche erst einmal, selbst herauszufinden, was zu tun ist. Was genau soll das Programm können? Wann soll was genau passieren? <spoiler>Die beiden haben folgende Dinge ausgemacht:

  • Nach dem Start einen kurzen Begrüßungstext und die erste geratene Zahl von 1 bis 100 ausgeben
  • Wird der micro:bit nach links geneigt, soll beim nächsten Mal eine kleinere Zahl geraten werden
  • Wird der micro:bit nach rechts geneigt, soll beim nächsten Mal eine größere Zahl geraten werden
  • Werden die Tasten A und B gemeinsam gedrückt, bedeutet das, dass die Zahl erraten wurde, und die Anzahl der Rateversuche wird ausgegeben

</spoiler>

Icon Materialien

  • BBC micro:bit
  • Optional: Staubsauger für den Verlierer oder die Verliererin beim Ratespiel ...

Icon Zeitaufwand

  • Zwei Schulstunden zum Entwickeln des Programms und für das mehrmalige Ausprobieren

Icon Schwierigkeitsgrad

borderlessborderlessborderless

Icon Kompetenzen

Du lernst

  • vernetztes und fachübergreifendes Denken
  • das Formulieren und Kodieren von Abläufen in formalen Algorithmen
  • die Berechnung eines arithmetischen Mittelwertes

Icon Unterrichtsfächer

Informatik, Mathematik

Icon Tipps und Hilfestellungen

  • Um garantieren zu können, maximal sieben Versuche zu benötigen, müssen wir geschickt raten, nicht bei jedem Versuch einfach eine zufällige Zahl von 1 bis 100.
  • Der Trick ist, den Ratebereich durch den Hinweis „größer“ oder „kleiner“ von Versuch zu Versuch möglichst viel kleiner werden zu lassen.
  • Überlege, welche Zahl man beim ersten Versuch rät, damit gleich möglichst viele Zahlen wegfallen. Wo liegt diese Zahl im Bereich von 1 bis 100? Welche Information erhalte ich als Ratende bzw. Ratender durch den Hinweis zum Beispiel „kleiner“? Wie schränkt sich mein Ratebereich („von ... bis“) damit ein? Welche Zahl nimmt man beim zweiten Versuch? Wo liegt diese?
  • Versuche durch Variablen die jeweils aktuellen Rategrenzen „von“ und „bis“ zu speichern. Diese können nach jedem Versuch mit den sich ändernden Grenzen überschrieben werden, da ich die vorhergehenden nicht mehr benötige!
  • Wie kann die Zahl, die man in jeder Runde rät, aus den Werten „von“ und „bis“ berechnet werden?
  • Eine elegante Möglichkeit ist, eine zentrale Funktion zu definieren, die eine Zahl im aktuell gültigen Bereich („von“, „bis“) berechnet und am Bildschirm ausgibt. Diese Funktion kann dann von den Ereignissen „nach links neigen“ und „nach rechts neigen“ aus aufgerufen werden, nachdem ein neuer Ratebereich festgelegt worden ist.

Weitere Infos, Hinweise und auch eine mögliche, komplette Lösung findest du auf der Lösungsseite zu diesem Beispiel.

Präsentation und Reflexion

  1. Stelle dein Ergebnis vor!
  2. Was hat dir bei der Entwicklung deines Produkts gefallen?
  3. Welche Schwierigkeiten hattest du? Wie konntest du sie lösen?
  4. Erläutere, wie dein Programm aussieht!
  5. Was war bei dieser Aufgabe interessant für dich?
  6. Wieso werden maximal 7 Versuche benötigt, wenn man gut rät, und nicht mehr? Überlege dazu, wie sich die Anzahl der Zahlen die es sein können, pro Versuch ändert. Zuerst 100, nach dem ersten Mal raten nur mehr ... nach dem zweiten Mal raten bleiben noch ... usw.
  7. Schreibt eure Vornamen jeweils auf einen Zettel. Sammelt die Zettel ein und sortiert sie alphabetisch auf einem Stapel. Versuche diesen Algorithmus einmal dafür einzusetzen, in diesem Stapel von Vornamen einen bestimmten zu finden. Wie gehst du dabei vor?
  8. Recherchiere im Internet nach dem Begriff der „binären Suche“ und finde heraus, wofür diese binäre Suche eingesetzt werden kann!