Wartością zwrotną funkcji jest wygenerowana informacja, która jest przekazywana do dalszej obróbki. Typ tej danej wypisujemy przed definicją funkcji i jest ona zwracana za pomocą słowa kluczowego return:
typ_wyniku_funkcji nazwa(argumenty)
{
//instrukcje funkcji
//..........
return wynik; //zwrócenie wyniku
}
Przeanalizujmy funkcję, która wyznaczy sumę cyfr zadanej liczby całkowitej. Zwracaną wartością będzie własnie ta suma. Informację tę w postaci wyniku można wykorzystać w dalszej części programu, np. wyświetlić ją na ekranie, sprawdzić czy ta suma jest parzysta lub czy mieści się w danym zakresie.
Napisz program, który zwróci prawdę, jeśli dana osoba jest pełnoletnia lub fałsz w przeciwnym razie.
Rozwiązanie
#include <iostream>
using namespace std;
bool czy_peln(unsigned int wiek)
{
if(wiek<18)
return false;
else
return true;
}
int main()
{
unsigned int wiek;
cout<<"Podaj wiek: ";
cin>>wiek;
//funkcja czy_peln zwróci prawdę lub fałsz,
//równoważny zapis warunku czy_peln(wiel)==true
if(czy_peln(wiek))
cout<<"Jesteś osobą pełnoletnią!"<<endl;
else
cout<<"Nie jesteś osobą pełnoletnią!"<<endl;
//wartość zwracanej wartosci można na przykład wyświetlić,
//lub przypisać do zmiennej
cout<<"Funkcja zwróciła wartość: "<<czy_peln(wiek)<<endl;
//przypisanie zwróconej wartości do zmiennej "x"
bool x = czy_peln(wiek);
return 0;
}
Pamiętaj!
Po wywołaniu słowa kluczowego return, funkcja nie wykona operacji, które znajdują się poniżej tej instrukcji.