Druckversion vom 18.05.2024 12:13 Uhr
Startseite Software erstellen Entscheidungen treffen Fallunterscheidung Zahlenraten
Zahlenraten
Zahlenraten ist ein bekanntes Spiel. Es kommt darauf an, mit möglichst wenigen Versuchen die ausgedachte Zahl zu raten. Bei jedem Versuch bekommt man die Auskunft, ob die geratene Zahl größer oder kleiner als die gesuchte Zahl ist.
Wir haben dieses Spiel wie folgt auf den Computer übertragen:
KOMMENTAR Zahlenraten
PROZEDUR Zahlenraten
KOMMENTAR Hier wird der Zahlenraum festgelegt
n := 1000
DRUCKE ("Zahlenraten im Zahlenraum von 1 bis ", n, NEUE_ZEILE)
zu_raten := ZUFALLSZAHL (n) + 1
geraten = 0
SOLANGE geraten != zu_raten WIEDERHOLE
geraten := EINGABE ("Ihre Zahl: ")
WENN geraten > 0
DANN
WENN geraten > zu_raten
DANN
DRUCKE ("Ihre Zahl ist zu gross")
SONST
DRUCKE ("Ihre Zahl ist zu klein")
ENDE WENN
SONST
DRUCKE ("Schade, dass Sie aufgeben haben!")
ABBRUCH
ENDE WENN
ENDE WIEDERHOLE
DRUCKE ("Herzlichen Glückwunsch - Sie haben die Zahl gefunden!")
ENDE PROZEDUR Zahlenraten
Einige von uns verwendete Schlüsselworte sind neu. Sie sollen deshalb hier erläutert werden:
DRUCKE ()
Die in der Liste gegebenen Werte werden auf dem Bilschirm angezeigt. Die Werte werden in der Liste durch Kommata getrennt. Texte werden von Anführungszeichen eingerahmt. Der Wert NEUE_ZEILE erzeugt eine Zeilenumbruch.
ZUFALLSZAHL ()
Diese Funktion gibt eine zufällig erzeugte ganze Zahl zurück, deren kleinster Wert 0 ist und die auf jeden Fall kleiner als Zahl ist.
EINGABE ()
Der angegebene Text wird auf dem Bildschirm angezeigt. Hinter dem Text blinkt der Eingabecursor. Es müssen Zeichen über die Tastatur eingegeben werden. Die eingegebenen Zeichen werden zurückgegeben, sobald die Eingabe-Taste gedrückt wurde.
Die zentrale Neuerung ist die Fallunterscheidung, die hier sogar in verschachtelter Form verwendet wird. Die allgemeine Form dieser Kontrollstruktur ist
WENN «Bedingung»
DANN
«Anweisungsliste»
SONST
«Anweisungsliste»
ENDE WENN
Wenn die auf das Schlüsselwort WENN folgende Bedingung erfüllt ist, dann werden die Anweisungen der ersten Anweisungsliste durchgeführt und dann der Ablauf mit der auf ENDE WENN folgenden Anweisung fortgesetzt.
Ist die Bedingung nicht erfüllt, dann wird statdessen die alternative zweite Anweisungsliste ausgeführt.
Aufgabe 1:
- Implementiere Zahlenraten in deiner Programmierumgebung.
Dazu kannst du die Hilfen für deine Programmierumgebung abrufen, die auf diese Aufgabenstellung folgen. - Erprobe das Programm.
- Wie oft musst du maximal raten, um die gesuchte Zahl zu finden?
- Erweitere die Prozedur so, dass neben dem Glückwunsch auch noch angegeben wird, wie oft du geraten hast.
Aufgabe 2:
Erweitere die Prozedur Zahlenraten so, dass neben dem Glückwunsch auch noch angegeben wird, wie oft du geraten hast.
Aufgabe 3:
Ergänze die Prozedur Zahlenraten durch weitere Prozeduren, so dass zwei Personen zum Raten aufgefordert werden und am Ende ausgegeben wird, wer von den beiden Personen die gesuchte Zahl mit weniger Versuchen gefunden hat.
Aufgabe 4:
Schreibe ein Programm, das zur Eingabe von Körpergröße und Körpergewicht den Body-Mass-Index berechnet, den Bodymass-Index und das Ergebnis Normalgewicht, Übergewicht oder Untergewicht ausgibt. Verwende das Diagramm auf der Seite Einführung