====== Unterprogramme bzw. Funktionen mit Rückgabewert ======
Unterprogramme können auch selbst ein Resultat liefern. Dieses Resultat wird mit der ''return''-Anweisung an das rufende Programm zurückgegeben. Der Typ des Rückgabewertes wird im Kopf der Funktion vereinbart.
==== Beispiels ====
Nochmals eine angepasste Version des Programms "Summe":
#include
#include
using namespace std;
int berechnung(int n);
void main()
{
int zahl, summe;
cout <<"Dieses Programm summiert alle Zahlen von 1 bis n";
cout <<"\n Zahl n: ";
cin >> zahl;
if (zahl>0) {
summe = berechnung(zahl);
cout<<"\n Summe: 1... "<=0){
sum=sum+n;
n--;
}
return sum;
} //Berechnung
==== Aufgabe 1 ====
Schreibe ein Programm (mit einer Funktion) welches folgenden Benutzerdialog realisiert:
1. Zahl: -Benutzereingabe-
2. Zahl: -Benutzereingabe-
größte Zahl: -gibt die größere der beiden Zahlen aus
==== Aufgabe 2 ====
Schreibe ein Programm zur Berechnung des Werts einer Potenz mit Hilfe einer Funktion mit Rückgabewert. Basis und Exponenten werden vom Benutzer eingegeben.
==== Aufgabe 3 ====
Schreibe ein Programm zur Umwandlung vom Grad ins Bogenmaß und umgekehrt. Der Benutzer wählt zuvor, welche Umwandlung er haben möchte. (mit je einer Funktion mit Rückgabewert)
* float gradzubogen(float grad) ---> Rückgabewert=Bogenmaß
* float bogenzugrad(float bogen) ---> Rückgabewert=Gradmaß
Hinweis: verwende die Bibliothek math.h um M_PI (Konstante dieser Bibliothek) zu verwenden.
==== Aufgabe 4 ====
Das folgende Programm soll mit Hilfe einer boolschen Funktion (mit Rückgabewert) überprüfen, ob eine vom Benutzer eingegebene Zahl eine Primzahl ist.
==== Aufgabe 5 ====
Schreibe ein Programm, dass einen Bruch soweit möglich kürzt. \\
Dazu gibt der Benutzer einen Zähler und Nenner ein. Mit Hilfe einer Funktion, die den ggT der beiden Zahlen mit dem euklidischen Algorithmus berechnet, soll der Bruch gekürzt und wieder ausgegeben werden.
==== Aufgabe 6 ====
Erstelle eine Programm (reichweite.cpp), dass bei Eingabe des Treibstoffverbrauchs (in Liter/100km) und der Fahrstrecke s die Gesamtmenge des Treibstoffs berechnet.
Hinweis: Die tatsächliche Berechnung soll dabei eine Funktion \\
''float gesamtverbrauch(float verbrauch, float strecke){}''\\
übernehmen. Ein- und Ausgaben sollen in der Hauptfunktion erfolgen.
==== Aufgabe 7 ====
Erstelle eine Funktion, welche als Rückgabewert eine auf n Nachkommastellen gerundete double-Zahl zurückgibt.
++++ Lösung|
Für diese Lösung muss die Funktion math.h eingebunden werden!
double roundfunkt(double zahl, int nkstellen)
{
zahl=(int)(zahl*pow(10,nkstellen)+0.5);
zahl=(double)(zahl/pow(10,nkstellen));
return zahl;
}
++++
==== Aufgabe 8 ====
Erstelle eine Funktion, welche den Body-Mass-Index (kurz: BMI) berechnet. Mit dieser Zahl kann man abschätzen, ob man Unter-, Normal oder Übergewicht hat.
BMI=(Gewicht in kg)/(Größe in m)²
==== Aufgabe 9 ====
Erstelle eine Funktion, welche den optimalen Puls bei Ausdauersportarten berechnet. Die Formel lautet: P=165-0.75*A (A...Alter).
==== Aufgabe 10 ====
Erstelle ein Programm mit drei Funktionen, welche die Faustformeln zur Berechnung von Reaktions-, Brems-, und Anhalteweg umsetzt:
- Reaktionsweg (in Metern) = (Geschwindigkeit (in km/h) geteilt durch 10) mal 3
- Bremsweg (in Metern) = (Geschwindigkeit (in km/h) geteilt durch 10) mal (Geschwindigkeit (in km/h) geteilt durch 10)
- Anhalteweg (in Metern) = Reaktionsweg plus Bremsweg