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;
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)
#include <math.h>
int najmanji (int x,int y, int z)
{
int min;
min=x;
if (y<min)
min=y;
if (z<min)
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);
printf("Unesite brojeve ==>");
scanf("%d,%d, %d",&a,&b,&c);
p=najmanji (a,b,c);
printf("\n Najmanji je: %d",p);
}