Universitšt Ulm - Abteilung Angewandte Informationsverarbeitung

 


1. Übungsblatt zur Vorlesung Allgemeine Informatik III


Abgabetermin: Dienstag, 28.10.2003


Zahlenraten    (10 Punkte)


a) Erraten von Zufallszahlen (4 Punkte)


Schreiben Sie ein C-Programm, mit dem Zahlen erraten werden können. Zu Beginn soll eine ganzzahlige Zufallszahl auf einem Intervall [a,b] erzeugt werden. Die Intervallgrenzen a und b sollen vom Benutzer festgelegt werden können. Anschließend soll das Programm eine Zahl von der Standardeingabe einlesen, diese Zahl mit der zufällig erzeugten Zahl vergleichen und ausgeben, ob die gesuchte Zahl kleiner, größer oder gleich der eingegebenen Zahl ist. Dieser Vorgang wird solange wiederholt, bis die Zahl erraten ist. Zum Schluß soll die Anzahl der Rateschritte ausgegeben werden.


b) Die beste Strategie (5 Punkte)


Modifizieren Sie Ihr C-Programm so, daß der Computer eine Zahl, die Sie sich ausdenken, in möglichst wenig Schritten errät. Der Computer soll dabei eine Zahl ausgeben (sein Tipp) und den Benutzer fragen, ob diese Zahl kleiner, größer oder gleich der gedachten Zahl ist. Danach rät der Computer eine neue Zahl bzw. gibt die Anzahl der Rateschritte aus, falls beide Zahlen übereinstimmen.


c) Maximale Anzahl von Rateschritten (1 Punkte)


Stellen Sie fest, wieviele Rateschritte bei optimaler Strategie im schlechtesten Fall nötig sind, wenn die Zufallszahlen auf dem Intervall [1,16] liegen. Bei welchen Zahlen werden maximal viele Rateschritte benötigt? Tipp: Hier ist die Länge des Intervalls eine 2er-Potenz!



Viel Erfolg!



Hans Braxmeier