Funkcije su sastavni delovi programa. Kad je reč o složenijim programskim modulima funkcije omogućavaju elementarizacija složenog problema tako što se proizvoljno strukturišu u kodu veće modularnosti. U dosadašnjim primerima naredbe koje se izvršavaju su sastavni deo funkcije main() -osnovni deo koji sadrže sve programe, prva funkcija koja se poziva prilikom startovanje jednogprograma napisan u programskom jeziku C++.
Funkcije predstavljaju skup naredbe koje se izvršavaju prilikom svakog njihovog poziva. Poziv funkcije je naredba koja procesoru signalizira da je potrebno prekinuti tok izvršavanje naredbe programa , upisati lokaciju unutar programa i pozivati adekvatnu funkcije. Nakon završetka pozvane funkcije, program nastavlja sa izvršavanjem od mesta gde je funkcija pozvana.
Sintaksa za kreiranje funkcije:
tip ime(parametar1, parametar2, parametar3, parametar4, …)
{
naredba1;
naredba2;
naredba3;
…..
naredbaN;
}
Pri čemu, tip je tip podatka koji se vraća kao rezultat funkcije (ili void, ako funkcija ne vraća rezultat), parametar1, parametar2, …, su parametri za poyiv funkcije , (tip i ime), odvojeni zarezom, dok naredba1, naredba2, …, naredbaN,naredbe koje se izvršavaju prilikom svakok poziva funkcije.Lista parametara nije obavezna , primer funkcija main().
Funkcija omogućava deljenje programa na sitnije delove – koji sami za sebe su veoma jednostavni za rešavanje.Kod strukturnog programiranja korišćenjem funkcija, umanjuje se složenost problema koji se rešava.
Pr.
Koristeći funkciju napravi program koji izraćunava N!?
Rešenje:
#include <iostream>
using
namespace
std;
int
factorial(
int
n)
{
int
res = 1;
for
(
int
i=2; i<=n; i++)
res *= i;
return
res;
}
int
main()
{
int
n = 4;
int
f = factorial(n);
//f = 24
cout << f << endl;
//stampa '24' (1*2*3*4)
return
0;
}