Nächste Seite: Über dieses Dokument ...
2. Übung des Programmierpraktikums
Abgabetermin: 23. März 2009, 23:59 Uhr
Die Übungen sind grundsätzlich allein zu machen.
Gruppenarbeit ist nicht erlaubt.
Abzugeben sind jeweils die sinnvoll dokumentierten
Programmfiles
(Files für Bsp. 5: bsp_5.cpp, bsp_5_fkt.cpp, bsp_5_fkt.hpp )
indem Sie diese in Ihr Verzeichnis im globalen Abgabeordner kopieren.
- Überprüfen Sie, ob die folgenden Rechenregeln der
Mathematik auch im Computer gelten, indem Sie
rechte und linke Seite nachstehender Gleichungen und die
Differenz beider Seiten ausgeben.
Die verfügbaren math. Funktionen sind unter
cmath
zu finden und werden über
#include <cmath>
in Ihren Quelltext eingebunden.
ea |
= |
ea . b |
|
| log10b |
= |
 |
|
/2 - arccosa |
= |
arctan |
|
| sinh a - cosh a |
= |
-e-a |
|
Testen Sie diese Rechenregeln sowohl für einfach genaue Zahlen
(float) als auch für doppelt genaue Zahlen
(double).
Geben Sie jeweils die Anzahl von Byte zur Speicherung einer Zahl
unter Nutzung von
sizeof
an und geben Sie die relative Genauigkeit für Ihren Datentyp analog
zum Beispiel
Ex390.cpp
an.
Die Zahl
wird von den meisten Compilern in obigem Headerfile als M_PI
bereitgestellt.
Testdaten (a,b):
(0.9876, 1.762e - 4),
(0.00187, 98),
- Schreiben Sie ein Programm, welches eine Gleikommazahl a und eine
ganze Zahl n einliest und diese Zahlen in den entsprechenden Datentypen speichert.
Geben Sie gleich nach dem Einlesen die reziproken Werte beider Zahlen aus.
Berechnen Sie eine neue Gleitkommazahl b, welche auf n Nachkommastellen
gerundet ist, d.h., aus
1123.987654 wird 1123.99 bei n = 2.
Nutzen Sie evtl. die Funktionen floor, ceil aus
cmath
oder die Tatsache, daß bei der Umwandlung einer Gleikommazahl in eine
ganze Zahl die Nachkommastellen wegfallen, siehe
Beispiel
Ex320.cpp
an.
Eingabedaten (a, n):
(113.375145, 3),
(3.98765, 2)
- Schreiben Sie ein Programm, welches 3 natürliche Zahlen
einliest und davon die Summe, das arithmetische, geometrische
und harmonische Mittel berechnet, sowie in Variablen speichert.
Die Eingabedaten und Ergebnisse sollen (informativ) ausgegebenen werden.
Wählen sie die Typen der zu definierenden Variablen nach dem
Wertebereich der Ergebnisse aus.
Eingabedaten (i1, i2, i3): (16, 4, 1), (3, 5, 8)
Hinweise:
Schauen Sie sich die folgenden C++-Funktionalitäten an und nutzen Sie diese
gegebenenfalls:
sizeof, exp, log, log10, acos, atan, sqrt, ainh, cosh, numeric_limits, pow,
floor, ceil, static_cast
Abgabe der Lösungen:
Die Abgabe der Lösungen (*.cpp-Files, *.hpp, ...,
keine exe-Files)
erfolgt ausschließlich durch das Kopieren dieser Files
in Ihr (beim erstenmal anzulegendes) Verzeichnis
Nachname_Vorname im globalen Abgabeordner
y: \\pers.ad.uni-graz.at\fs\ou\621\stud_haase\Nachname_Vorname .
Hinweise hierzu sind unter der
LV-Homepage
zu finden.
Die Filenamen müssen dem Schema bsp_nummer,
gefolgt von der Filextension, entsprechen. Z.B. ist in Beispiel 1 das File
bsp_1.cpp abzugeben.
Andere Filebezeichner zählen als nicht abgegebene Files.
Nächste Seite: Über dieses Dokument ...
Gundolf Haase
2009-03-13