Funkcije

Funkcije

Funkcije su cjelovite skupine naredbi koje izvršavanjem ispunjavaju određene zahtjeve. Omogućavaju raščlanjivanje problema na jednostavnije - manje cjeline, čime doprinose boljoj preglednost izvornog koda i jednostavnijem rješenjem. 

Funkcija se definira na slijedeći način:

tip_funkcije ime_funkcije(najava liste_argumenata) 
{
najava lokalnih varijabli;
naredbe;
return izlazna_vrijednost;
}

·         tip_funkcije određuje tip vrijednosti koju pozvana funkcija vraća u nadređenu funkciju, a može biti bilo koji od osnovnih tipova podataka (int, char, float, double, void),
·         ime_funkcije je identifikator preko kojeg se funkcija poziva
·         lista_argumenata je lista formalnih parametara sa pripadajućim tipovima preko kojih se niz podataka iz nadređene funkcije prenose u pozvanu funkciju.

Funkcija u glavni program vraća jednu ili niti jednu vrijednost, ovisno o tipu funkcije. Za prijenos vrijednosti u nadređeni program koristi se naredba return.

Funkcija se poziva na slijedeći način:

ime_funkcije(stvarna lista_argumenata);

Funkcije se mogu pozivati u izrazima, petljama, ili kao argumenti u pozivima drugih funkcija. Svaka korištena funkcija se mora najaviti prije poziva.



Primjer1: Napiši program kojim će se pomnožiti cijela dva broja i ispisati rezultat. Za množenje cijelih brojeva napiši funkciju.
               #include <iostream.h>
               #include <math.h>
               /*funkcija za množenje*/
               int pomnozi(int x,int y)
               {
                              int rez;   /*lokalna varijabla*/
                               rez=x*y;
                               return rez;
               }
 
               /*glavni dio programa*/
               void main()
               {
                               int p,a,b;
                               printf("Unesite brojeve za množenje ==>");
                               scanf("%d,%d",&a,&b); 
                               p=pomnozi (a,b); 
                               printf("\n Umnožak je: %d“,p);
               }
 
Primjer 2: Napiši funkciju za traženje najmanjeg od 3 učitana broja. Zatim  napiši glavni program koji će pozvati napisanu funkciju i ispisati njezino rješenje.

#include <stdio.h>
#include <math.h>
int najmanji (int x,int y, int z)
{           
            int min;  
            min=x;
            if (y<min)
min=y;
if (z<min)
min=z;
return min;
}

void main()
{
int p,a,b,c;
printf("Unesite brojeve  ==>");
scanf("%d,%d, %d",&a,&b,&c);
p=najmanji (a,b,c);
printf("\n Najmanji je: %d",p);
}