Zum Hauptinhalt springen Skip to page footer

Bedingungen - Abfragen (wenn ... dann ... sonst ...)

Einstieg

Allgemeine Fragen:

  • Wie entscheidest du, was du anziehst, wenn du vor deinem Kleiderschrank stehst?
  • Wie entscheidest du, was du isst, wenn du hungrig bist?
  • Wie entscheidest du, was du in deiner Freizeit machen möchtest?

Super Mario Fragen:

Stell dir vor, du spielst als Mario in einem neuen Level. Du triffst auf einen Gegner.

Beschreibe Möglichkeiten, mit denen du den Gegner besiegen wirst? Schreibe drei Möglichkeiten auf und beschreibe, was passieren wird, wenn du diese Entscheidungen triffst.

Formuliere als „Wenn … dann …“-Aussagen.

Information ?

Bedingungen in Programmiersprachen ermöglichen es, Code auf eine bestimmte Weise auszuführen, wenn eine bestimmte Bedingung erfüllt ist, und eine andere Weise, wenn die Bedingung nicht erfüllt ist.

Eine Bedingung besteht aus einer Aussage, die wahr oder falsch sein kann. Wenn die Aussage wahr ist, wird der Code innerhalb der Bedingung ausgeführt. Wenn die Aussage falsch ist, wird der Code innerhalb der Bedingung übersprungen und die Ausführung des Programms wird fortgesetzt.

In den meisten Programmiersprachen wird die Bedingung mit einer if-Anweisung geschrieben. Die if-Anweisung besteht aus dem Schlüsselwort „if“, gefolgt von der Aussage in Klammern und dem Code innerhalb der Bedingung in geschweiften Klammern. Hier ist ein einfaches Beispiel in der Programmiersprache Python:

x = 10
if x > 5:
    print("x ist größer als 5")

In diesem Beispiel wird die Bedingung „x > 5“ überprüft. Da dies wahr ist, wird der Code innerhalb der Bedingung ausgeführt und „x ist größer als 5“ wird auf der Konsole ausgegeben.

Eine weitere Möglichkeit, Bedingungen in Programmiersprachen zu verwenden, ist mit einer if-else-Anweisung, auch bekannt als Wenn-Dann-Sonst-Anweisung. Mit dieser Anweisung kann der Code auf unterschiedliche Weise ausgeführt werden, abhängig davon, ob die Bedingung wahr oder falsch ist.

Hier ist ein Beispiel in Python:

x = 10
if x > 5:
    print("x ist größer als 5")
else:
    print("x ist kleiner oder gleich 5")

In diesem Beispiel wird die Bedingung „x > 5“ überprüft. Da dies wahr ist, wird der Code innerhalb der if-Klausel ausgeführt und „x ist größer als 5“ wird auf der Konsole ausgegeben. Wenn die Bedingung falsch wäre, würde der Code innerhalb der else-Klausel ausgeführt und „x ist kleiner oder gleich 5“ würde auf der Konsole ausgegeben werden.

Die if-else-Anweisung erweitert die Möglichkeiten von Bedingungen in Programmiersprachen, da sie es ermöglicht, unterschiedliche Aktionen basierend auf unterschiedlichen Bedingungen auszuführen.


Aufgabe 1: Implementiere ein Programm, das den Benutzer fragt, ob er eine bestimmte Farbe auswählen möchte, und dann eine Figur in dieser Farbe einfärbt, wenn er „Ja“ antwortet.

  • Frag den Benutzer, ob er eine bestimmte Farbe auswählen möchte
  • Wenn der Benutzer "Ja" antwortet, dann
    • Färbe die Figur in einer Farbe ein
  • Sonst,
    • Sage "Okay, die Figur wird nicht eingefärbt."

  1. Um den Benutzer nach seiner Farbauswahl zu fragen, können Sie den Block „frage“ aus der Kategorie „Eingabe“ verwenden. Sie können den Text, den der Benutzer sehen wird, ändern, um eine spezifische Farbe anzufordern. Zum Beispiel: „Möchtest du die Figur in Rot einfärben?“
  2. Verwenden Sie den Block „Wenn … dann“ aus der Kategorie „Steuerung“, um auf die Antwort des Benutzers zu reagieren. Wenn der Benutzer „Ja“ antwortet, gehen Sie zum nächsten Schritt. Andernfalls überspringen Sie den Schritt und gehen direkt zum Schritt „Sonst, wenn … dann“.
  3. Um die Figur einzufärben, können Sie den Block „ändere Farbeeffekt um“ aus der Kategorie „Effekte“ verwenden. Stellen Sie sicher, dass Sie den Farbeeffekt auf die ausgewählte Farbe ändern.
  4. Wenn der Benutzer „Nein“ antwortet, können Sie eine Mitteilung ausgeben, indem Sie den Block „sage“ aus der Kategorie „Ausgabe“ verwenden. Stellen Sie sicher, dass die Nachricht klar ist und den Benutzer darüber informiert, dass die Figur nicht eingefärbt wird.

Aufgabe 2: Implementiere ein Programm, das den Benutzer fragt, wie alt er ist, und dann eine Nachricht ausgibt, die besagt, ob er alt genug ist, um bestimmte Aktivitäten auszuführen (z.B. Führerschein, Alkohol trinken usw.).

  • Frag den Benutzer, wie alt er ist
  • Wenn das Alter des Benutzers größer oder gleich 17 ist, dann
    • Sage "Sie sind alt genug, um einen Führerschein zu haben und Alkohol zu trinken."
  • Sonst,
    • Sage "Sie sind noch zu jung, um Auto zu fahren oder Alkohol zu trinken."

  1. Um den Benutzer nach seinem Alter zu fragen, können Sie den Block „frage“ aus der Kategorie „Eingabe“ verwenden. Stellen Sie sicher, dass die Frage klar ist und der Benutzer das Alter in Jahren eingibt.
  2. Verwenden Sie den Block „Wenn … dann“ aus der Kategorie „Steuerung“, um auf das Alter des Benutzers zu reagieren. Überprüfen Sie, ob das Alter des Benutzers größer oder gleich 18 ist. Wenn ja, gehen Sie zum nächsten Schritt. Andernfalls prüfen Sie, ob das Alter des Benutzers größer oder gleich 16 ist. Wenn ja, gehen Sie zum nächsten Schritt. Andernfalls gehen Sie zum letzten Schritt.
  3. Verwenden Sie den Block „sage“ aus der Kategorie „Ausgabe“, um eine Nachricht auszugeben, die besagt, welche Aktivitäten der Benutzer ausführen kann, abhängig von seinem Alter. Stellen Sie sicher, dass die Nachricht klar und verständlich ist.
  4. Sie können weitere Bedingungen hinzufügen, um zu überprüfen, ob der Benutzer für andere Aktivitäten wie das Rauchen von Tabak oder den Zugang zu bestimmten Websites alt genug ist. Verwenden Sie einfach weitere „Wenn … dann“-Blöcke und passen Sie die Bedingungen und Nachrichten entsprechend an.

Aufgabe 3: Implementiere ein Programm, das den Benutzer fragt, welche Art von Tier er mag (z.B. Katzen oder Hunde), und dann das Aussehen der Figur entsprechend ändert.

  • Frag den Benutzer, welche Art von Tier er mag
  • Wenn der Benutzer "Hund" sagt, dann
    • Ändere das Aussehen der Figur in das eines Hundes
  • Sonst,
    • Mache etwas anderes

  1. Um den Benutzer nach seiner Lieblings-Tierart zu fragen, können Sie den Block „frage“ aus der Kategorie „Eingabe“ verwenden. Sie können den Text, den der Benutzer sehen wird, ändern, um verschiedene Tierarten anzufordern. Zum Beispiel: „Welche Art von Tieren magst du am liebsten: Katzen oder Hunde?“
  2. Verwenden Sie den Block „Wenn … dann“ aus der Kategorie „Steuerung“, um auf die Antwort des Benutzers zu reagieren. Wenn der Benutzer „Katzen“ sagt, ändern Sie das Aussehen der Figur entsprechend. Wenn der Benutzer „Hunde“ sagt, ändern Sie das Aussehen der Figur ebenfalls. Wenn der Benutzer „keine Ahnung“ sagt, gehen Sie zum nächsten Schritt.
  3. Um das Aussehen der Figur zu ändern, können Sie den Block „Ändere Kostüm zu“ aus der Kategorie „Aussehen“ verwenden. Stellen Sie sicher, dass Sie das Kostüm auswählen, das dem Tier entspricht, das der Benutzer ausgewählt hat.
  4. Wenn der Benutzer „keine Ahnung“ sagt, können Sie eine Mitteilung ausgeben, indem Sie den Block „sage“ aus der Kategorie „Ausgabe“ verwenden. Stellen Sie sicher, dass die Nachricht klar ist und den Benutzer darüber informiert, dass das Aussehen der Figur nicht geändert wird.

Aufgabe 4: Implementiere ein Programm, das den Benutzer fragt, ob er den Hintergrund ändern möchte, und dann entweder den Hintergrund ändert oder nicht.

  • Frag den Benutzer, ob er den Hintergrund ändern möchte
  • Wenn der Benutzer "Ja" sagt, dann
    • Ändere den Hintergrund zum nächsten Bühnenbild
  • Sonst,
    • Sage "Okay, der Hintergrund bleibt wie er ist."

  1. Um den Benutzer zu fragen, ob er den Hintergrund ändern möchte, können Sie den Block „frage“ aus der Kategorie „Eingabe“ verwenden. Stellen Sie sicher, dass die Frage klar ist und dass der Benutzer mit „Ja“ oder „Nein“ antworten kann.
  2. Verwenden Sie den Block „Wenn … dann“ aus der Kategorie „Steuerung“, um auf die Antwort des Benutzers zu reagieren. Wenn der Benutzer „Ja“ sagt, gehen Sie zum nächsten Schritt. Wenn der Benutzer „Nein“ sagt, gehen Sie zum letzten Schritt.
  3. Um dem Benutzer eine Auswahl von Hintergründen zu zeigen, können Sie den Block „Frage mit Antwortmöglichkeiten“ aus der Kategorie „Eingabe“ verwenden. Geben Sie eine klare Frage ein, z.B. „Welchen Hintergrund möchten Sie auswählen?“ und fügen Sie dann eine Liste von Antwortmöglichkeiten hinzu, die verschiedene Hintergründe enthalten. Verwenden Sie den Block „Ändere Hintergrund auf ()“ aus der Kategorie „Bühne“, um den Hintergrund entsprechend der Auswahl des Benutzers zu ändern.
  4. Wenn der Benutzer „Nein“ sagt, können Sie eine Mitteilung ausgeben, indem Sie den Block „sage“ aus der Kategorie „Ausgabe“ verwenden. Stellen Sie sicher, dass die Nachricht klar ist und den Benutzer darüber informiert, dass der Hintergrund nicht geändert wird.

Aufgabe 5: Implementiere ein Programm, bei dem der Benutzer eine eigene Frage eingeben soll. Das Programm soll anschließend zufällig mit ja oder nein antworten.

  • Frage den Benutzer, welche Frage er stellen möchte
  • Generiere eine zufällige Zahl zwischen 0 und 1
  • Wenn die Zahl 0 ist, dann
    • Antworte "Nein" auf die Frage des Benutzers
  • Sonst,
    • Antworte "Ja" auf die Frage des Benutzers

  1. Verwenden Sie den Block „frage“ aus der Kategorie „Eingabe“, um den Benutzer nach seiner Frage zu fragen.
  2. Verwenden Sie den Block „zufällige ganze Zahl von … bis …“ aus der Kategorie „Operatoren“, um eine zufällige Zahl zwischen 0 und 1 zu generieren.
  3. Verwenden Sie den Block „Wenn … dann“ aus der Kategorie „Steuerung“, um auf die zufällige Zahl zu reagieren. Wenn die Zahl 0 ist, antworten Sie mit „Ja“. Wenn die Zahl 1 ist, antworten Sie mit „Nein“.
  4. Um auf die Frage des Benutzers zu antworten, verwenden Sie den Block „Antworte () auf die Frage ()“ aus der Kategorie „Eingabe“. Geben Sie die zufällige Antwort („Ja“ oder „Nein“) und die Frage des Benutzers ein.
  5. Stellen Sie sicher, dass das Programm klar macht, dass die Antwort zufällig ist und nicht unbedingt auf Fakten oder Wissen basiert.

Aufgabe 6: Implementiere ein Programm, das den Benutzer fragt, ob er eine bestimmte Anzahl von Punkten erreicht hat, und dann entweder eine Nachricht ausgibt, die besagt, dass er gewonnen hat, oder eine Nachricht, die besagt, dass er verloren hat.

  • Frage den Benutzer, ob er eine bestimmte Anzahl von Punkten erreicht hat
  • Wenn die Antwort des Benutzers "Ja" ist und er mindestens die bestimmte Anzahl von Punkten erreicht hat, dann
    • Gebe die Nachricht aus "Herzlichen Glückwunsch, du hast gewonnen!"
  • Sonst, wenn die Antwort des Benutzers "Ja" ist und er weniger als die bestimmte Anzahl von Punkten erreicht hat, dann
    • Gebe die Nachricht aus "Leider hast du verloren, versuche es erneut."

  1. Verwenden Sie den Block „frage“ aus der Kategorie „Eingabe“, um den Benutzer nach der Anzahl der Punkte zu fragen.
  2. Speichern Sie die Antwort des Benutzers in einer Variablen.
  3. Überprüfen Sie mit einer Bedingung, ob die Antwort des Benutzers „Ja“ oder „Nein“ ist.
  4. Wenn die Antwort „Ja“ ist, überprüfen Sie mit einer weiteren Bedingung, ob die Anzahl der erreichten Punkte die bestimmte Anzahl erreicht oder überschritten hat.
  5. Wenn die Bedingung erfüllt ist, geben Sie die Nachricht aus „Herzlichen Glückwunsch, du hast gewonnen!“ mit dem Block „Sag () für () Sekunden“ aus der Kategorie „Aussehen“ aus. Andernfalls geben Sie die Nachricht „Leider hast du verloren, versuche es erneut.“ aus.
  6. Wenn die Antwort „Nein“ ist, beenden Sie das Programm mit dem Block „stoppen“ aus der Kategorie „Steuerung“.
  7. Stellen Sie sicher, dass die Anzahl der Punkte und die bestimmte Anzahl von Punkten klar definiert sind und dem Benutzer bekannt sind.

Aufgabe 7: Implementiere ein Programm, das den Benutzer fragt, ob er eine bestimmte Taste drücken möchte, und dann entweder eine Aktion ausführt, wenn er die Taste drückt, oder nichts tut, wenn er die Taste nicht drückt.

  • Frage den Benutzer, ob er eine bestimmte Taste drücken möchte
  • Wenn die Antwort des Benutzers "Ja" ist, dann
    • Warte auf die Tasteneingabe des Benutzers
    • Wenn die gedrückte Taste der bestimmten Taste entspricht, dann
      • Führe eine Aktion aus
    • Sonst,
      • dann Tue nichts
  • Sonst,
    • Tue nichts

  1. Verwenden Sie den Block „frage“ aus der Kategorie „Eingabe“, um den Benutzer nach der Tasteneingabe zu fragen.
  2. Speichern Sie die Antwort des Benutzers in einer Variablen.
  3. Überprüfen Sie mit einer Bedingung, ob die Antwort des Benutzers „Ja“ oder „Nein“ ist.
  4. Wenn die Antwort „Ja“ ist, verwenden Sie den Block „Warte auf () Sekunden“ aus der Kategorie „Ereignisse“, um auf die Tasteneingabe des Benutzers zu warten.
  5. Verwenden Sie den Block „Wenn () gedrückt“ aus der Kategorie „Ereignisse“, um die Tasteneingabe des Benutzers zu überprüfen.
  6. Wenn die gedrückte Taste der bestimmten Taste entspricht, führen Sie die gewünschte Aktion aus. Andernfalls tun Sie nichts.
  7. Wenn die Antwort des Benutzers „Nein“ ist, tun Sie nichts.
  8. Stellen Sie sicher, dass die bestimmte Taste klar definiert ist und dem Benutzer bekannt ist.

Aufgabe 8: Implementiere ein Programm, das den Benutzer fragt, ob er eine bestimmte Aktion ausführen möchte, und dann entweder die Aktion ausführt oder nicht.

  • Frage den Benutzer, ob er eine bestimmte Aktion ausführen möchte
  • Wenn die Antwort des Benutzers "Ja" ist, dann
    • Führe die gewünschte Aktion aus
  • Sonst,
    • Tue nichts

  1. Verwenden Sie den Block „frage“ aus der Kategorie „Eingabe“, um den Benutzer nach der gewünschten Aktion zu fragen.
  2. Speichern Sie die Antwort des Benutzers in einer Variablen.
  3. Überprüfen Sie mit einer Bedingung, ob die Antwort des Benutzers „Ja“ oder „Nein“ ist.
  4. Wenn die Antwort „Ja“ ist, führen Sie die gewünschte Aktion aus.
  5. Wenn die Antwort des Benutzers „Nein“ ist, tun Sie nichts.
  6. Stellen Sie sicher, dass die gewünschte Aktion klar definiert ist und dem Benutzer bekannt ist.

Aufgabe 9: Implementiere ein Programm, das den Benutzer fragt, ob er eine bestimmte Anzahl von Schritten machen möchte, und dann entweder die Schritte macht oder nicht.

  • Frage den Benutzer, ob er eine bestimmte Anzahl von Schritten machen möchte
  • Wenn die Antwort des Benutzers "Ja" ist, dann
    • Mache die gewünschte Anzahl von Schritten
  • Sonst
    • Tue nichts

  1. Verwenden Sie den Block „frage“ aus der Kategorie „Eingabe“, um den Benutzer nach der gewünschten Anzahl von Schritten zu fragen.
  2. Speichern Sie die Antwort des Benutzers in einer Variablen.
  3. Überprüfen Sie mit einer Bedingung, ob die Antwort des Benutzers „Ja“ oder „Nein“ ist.
  4. Wenn die Antwort „Ja“ ist, machen Sie die gewünschte Anzahl von Schritten.
  5. Wenn die Antwort des Benutzers „Nein“ ist, tun Sie nichts.
  6. Stellen Sie sicher, dass die gewünschte Anzahl von Schritten klar definiert ist und dem Benutzer bekannt ist.
  7. Verwenden Sie die Bewegungsblöcke aus der Kategorie „Bewegung“, um die Schritte auszuführen.

Aufgabe 10: Implementiere ein Programm, das den Benutzer fragt, ob er eine bestimmte Figur auswählen möchte, und dann entweder die Figur auswählt oder nicht.

Hinweis: Auswählen könnte bedeuten, dass die Kontur anders dargestellt wird (Farbe, Strichstärke), ...

  • Frage den Benutzer, ob er eine bestimmte Figur auswählen möchte
    • Wenn die Antwort des Benutzers "Ja" ist, dann
      • Wähle die gewünschte Figur aus
    • Sonst,
      • wenn die Antwort des Benutzers "Nein" ist, dann
        • Tue nichts

  1. Verwenden Sie den Block „frage“ aus der Kategorie „Eingabe“, um den Benutzer nach der gewünschten Figur zu fragen.
  2. Speichern Sie die Antwort des Benutzers in einer Variablen.
  3. Überprüfen Sie mit einer Bedingung, ob die Antwort des Benutzers „Ja“ oder „Nein“ ist.
  4. Wenn die Antwort „Ja“ ist, wählen Sie die gewünschte Figur aus.
  5. Wenn die Antwort des Benutzers „Nein“ ist, tun Sie nichts.
  6. Stellen Sie sicher, dass die verfügbaren Figuren dem Benutzer bekannt sind und sie klar definiert sind.
  7. Verwenden Sie die Grafikblöcke aus der Kategorie „Aussehen“, um die Figur auszuwählen.


Abgabe

Aufgabe: Implementiere ein Programm in Scratch, das mithilfe von eingegebenen Befehlen (Gehe, Drehe, Stopp, …) und einer anschließend abgefragten Eingabegröße eine Figur steuert.

Erweitere das Programm um weitere Ideen.

  • Wiederhole für immer:
    • Frage den Benutzer nach dem Befehl
    • Wenn der Befehl "Gehe" ist, dann
      • Frage den Benutzer nach der Anzahl der Schritte
      • Gehe die gewünschte Anzahl von Schritten
    • Sonst, wenn der Befehl "Drehe" ist, dann
      • Frage den Benutzer nach dem Winkel
      • Drehe die Figur um den gewünschten Winkel
    • Sonst, wenn der Befehl "Stop" ist, dann
      • Stoppe das Programm
    • Sonst
      • Gib eine Fehlermeldung aus

  1. Verwenden Sie eine Schleife, um das Programm fortlaufend auszuführen.
  2. Verwenden Sie den Block „frage“ aus der Kategorie „Eingabe“, um den Benutzer nach dem Befehl zu fragen.
  3. Verwenden Sie Bedingungen (wenn…sonst), um den Befehl zu identifizieren und die entsprechende Aktion auszuführen.
  4. Für den Befehl „Gehe“ verwenden Sie den Block „gehe“, um die gewünschte Anzahl von Schritten zu gehen.
  5. Für den Befehl „Drehe“ verwenden Sie den Block „drehe dich um“, um die Figur um den gewünschten Winkel zu drehen.
  6. Für den Befehl „Stop“ verwenden Sie den Block „stoppe alles“, um das Programm zu beenden.
  7. Für ungültige Eingaben geben Sie eine Fehlermeldung aus und fordern Sie den Benutzer auf, einen gültigen Befehl einzugeben.
  8. Stellen Sie sicher, dass der Benutzer die benötigten Informationen (Anzahl der Schritte, Winkel, …) für jeden Befehl eingibt.

Stundenfragen

Fragen – Notiere diese im Heft und beantworte sie schriftlich!

  1. Was sind Bedingungen in Scratch und wie werden sie erstellt?
  2. Wie können Bedingungen in Scratch verwendet werden, um Entscheidungen zu treffen?
  3. Wie können Bedingungen in Scratch dazu beitragen, dass dein Programm flexibler wird?
  4. Wie können wir sicherstellen, dass unser Programm auf alle möglichen Bedingungen vorbereitet ist?
  5. Wie können wir mit Bedingungen in Scratch den Fluss unseres Programms steuern?
  6. Wie können wir in Scratch mit Bedingungen auf Benutzereingaben reagieren?

Bedingungen in Scratch sind Entscheidungspunkte im Programmcode, die es erlauben, zwischen verschiedenen Aktionen zu wählen, je nachdem, ob eine bestimmte Bedingung wahr oder falsch ist. Sie können in Scratch mithilfe von Blöcken wie „Wenn-Dann“ und „Sonst-Wenn“ erstellt werden.

Bedingungen in Scratch können verwendet werden, um Entscheidungen zu treffen, indem sie den Programmfluss steuern und unterschiedliche Aktionen ausführen, je nachdem, ob eine bestimmte Bedingung wahr oder falsch ist. Zum Beispiel kann man einen Codeblock erstellen, der prüft, ob eine bestimmte Variable größer oder kleiner als ein bestimmter Wert ist, und dann entsprechend darauf reagieren.

Bedingungen in Scratch können dazu beitragen, dass das Programm flexibler wird, indem sie es dem Benutzer ermöglichen, unterschiedliche Aktionen auszuführen, je nachdem, welche Bedingungen erfüllt sind. Dies kann dazu beitragen, dass das Programm besser auf verschiedene Situationen und Eingaben reagieren kann.

Wir können sicherstellen, dass unser Programm auf alle möglichen Bedingungen vorbereitet ist, indem wir alle möglichen Fälle berücksichtigen und entsprechende Bedingungen und Reaktionen im Code einbauen. Eine Möglichkeit, dies zu tun, besteht darin, eine Liste der möglichen Bedingungen zu erstellen und dann sicherzustellen, dass jede Bedingung im Code berücksichtigt wird.

Bedingungen in Scratch können dazu beitragen, den Fluss des Programms zu steuern, indem sie es dem Programmierer ermöglichen, unterschiedliche Aktionen in Abhängigkeit von bestimmten Bedingungen auszuführen. Dadurch kann das Programm interaktiver und dynamischer werden.

In Scratch können wir mit Bedingungen auf Benutzereingaben reagieren, indem wir den Benutzer nach bestimmten Informationen fragen und dann den Code entsprechend anpassen. Zum Beispiel können wir den Benutzer nach seinem Alter fragen und dann entscheiden, ob er bestimmte Funktionen im Programm verwenden darf.