Programmieren fu ¨ r Physiker Interfakultatives Institut f¨ ur Anwendungen der Informatik Institut f¨ ur Theoretische Teilchenphysik Prof. Dr. M. Steinhauser, Dr. A. Mildenberger http://comp.physik.kit.edu SS 2015 – Blatt 03 Bearbeitungszeitraum: bis 06. Mai 2015 Aufgabe 7: Die mittlere von drei Zahlen Pflichtaufgabe Schreiben Sie ein C++-Programm, das Folgendes leistet: Es werden drei double-Zahlen vom Benutzer erfragt. Dann soll diejenige Zahl ermittelt und ausgegeben werden, die die mittlere Zahl ist, also diejenige, die in der Mitte stehen w¨ urde, wenn man die drei Zahlen der Gr¨oße nach sortiert aufschriebe. Verwenden Sie geeignete Fallunterscheidungen. Beispiel: Eingabe 2, 8 und 7 → mittlere Zahl ist 7 Eingabe -1.7, -3 und 0 → mittlere Zahl ist -1.7 Aufgabe 8: Zahlenraten Pflichtaufgabe In einem kleinen Spiel soll eine im Rechner erzeugte, geheime Zufallszahl zwischen 1 und 20 erraten werden. In jeder Spielrunde gibt hierbei der Spieler einen Tipp ab. Falls die Zahl noch nicht erraten wurde, teilt das Programm mit, ob der Tipp zu groß oder zu klein war. Falls die richtige Zahl getippt wurde, soll das Programm eine Gratulation und die Anzahl der ben¨otigten Versuche ausgeben und das Spiel zu Ende sein. Hinweis: Eine Zufallszahl z im Bereich [1, 20] erhalten Sie, indem Sie im Kopf des Programmes #include <cstdlib> und #include <time.h> einf¨ ugen und dann innerhalb des Hauptprogrammes die Zeilen srand((unsigned int)time(0)) ; und int z = rand()%20 + 1 ; verwenden. Der erste Ausdruck versetzt den Zufallszahlengenerator rand in einen zuf¨alligen“ ” Ausgangszustand. Der zweite Ausdruck erzeugt die Zufallszahl und legt diese in der Variablen z ab. Zusatzfragen (freiwillig): (a) Welche Strategie f¨ uhrt i.A. am Schnellsten zum Ziel? (b) K¨onnen Sie Ihr Programm so erweitern, dass zus¨atzlich mitgeteilt wird, falls unsinnige Rateversuche“ ” eingegeben werden? Gemeint sind damit Rateversuche, die bereits durch vorherige Ausk¨ unfte ausgeschlossen werden k¨ onnen. Aufgabe 9: Wochentag freiwillig Schreiben Sie ein Programm, welches zu einem eingegebenen Datum den Wochentag berechnet. Beachten Sie hierbei Schaltjahre und die Regelung, dass glatt durch 100 teilbare Jahreszahlen keine Schaltjahre sind, allerdings glatt durch 400 teilbare Jahreszahlen wiederum Schaltjahre sind. Berechnen Sie zun¨ achst den Wochentag als Zahl und geben Sie mittels einer switch Anweisung den Tagesnamen aus. Anleitung: Bestimmen Sie die Anzahl der Tage zwischen dem eingegebenen und einem (von Ihnen gew¨ahlten) Referenzdatum, von dem Sie den Wochentag kennen. Wegen der periodischen Wiederholung der Wochentage gen¨ ugt es dann, den Rest bei Division durch sieben zu betrachten.
© Copyright 2024 ExpyDoc