You are on page 1of 7

FUNKCIJE ZADACI

v.8.
Zadatak 1:
Napiite program koji e omoguiti kvadriranje bilo koje cjelobrojne vrijednosti.
Upotrijebite funkciju kako bi ste izvrili kvadriranje.
Zadatak 2:
Banka na poetku svake godine ulagaima obraunava kamatu sa P procenata na
novanu sumu koja je odleala u toku prethodne godine. Napiite program,
potujui sve faze procesa programiranja, kojim se uz koritenje funkcije kamata
izraunava novani iznos kojim e ulaga raspolagati poslije G godina ako je
poetno ulaganje S. Pretpostavlja se da ulaga nee podizati novac u
meuvremenu.
Zadatak 3:
Napisati C++ program koji uitava vrijednosti prijeenog puta u kilometrima, a
zatim vri konverziju u mjernu jedinicu po izboru korisnika: centimetre, milimetre,
milje ili stope. Problem rijeiti pomou funkcija!
Zadatak 4:
Napiite program u kojem ete upotrijebiti funkciju za raunanje sume
harmonijskog niza dobule HSuma(int). Broj lanova niza odreuje korisnik. Sumu
je potrebno ispisati u funkciji main.
1 1 1 1
1 2 3 n
(Harmonijski niz: (H= , , ,., ) )

Funkcije

Zadatak: Napiite program, potujui sve faze procesa programiranja, koji


e ispisati sve etveroznamenkaste brojeve kojima su: sve znamenke neparne i
ne sadri znamenku 0. Upotrijebite funkciju:
void ispis_brojeva ();

Zadatak: Napiite program, potujui sve faze procesa programiranja, u kojem


ete kreirati funkciju potencija koja obavlja isti posao kao i funkcija pow(x,y),
odnosno rauna xy.
Zadatak: Napiite program, potujui sve faze procesa programiranja, koji
e za uneseni broj sati, minuta i sekunda ispisati koliko je to ukupno sekundi.
Upotrijebite funkciju:
int sekunde (int, int, int);

Zadatak : Napiite program, potujui sve faze procesa programiranja, u kojem


se od korisnika trai unos tri broja. Program treba ispisati najveu i najmanju od
unesenih vrijednosti. Za pronalaenje najmanjeg i najveeg broja upotrijebite
funkcije najmanji i najveci iji su prototipovi dati u nastavku:
float najmanji (float, float, float);
float najveci (float, float, float);
Zadatak: Napisati C++ program, potujui sve faze procesa programiranja, koji
uitava vrijednosti prijeenog puta u kilometrima, a zatim vri konverziju u
mjernu jedinicu po izboru korisnika: centimetre, milimetre, milje ili stope.
Problem rijeiti pomou funkcija!

1 milja = 1.60935 km
1 stopa = 30.48 cm

Zadatak: Napisati C++ program, potujui sve faze procesa programiranja, koji
pomou funkcije rauna n-ti lan Fibonacci-evog niza.
Fibonacci- jev niz: 1 1 2 3 5 8 13 21 .

Zadatak
Napiite program za ispis tablice mnoenja prvih 10 prirodnih brojeva. Potujte
sve faze procesa programiranja
Zadatak
Napiite program, potujui sve faze procesa programiranja, koji provjerava
pojavljuje li se znamenka 9 u zapisu cijelog broja n.
Zadatak
Napiite program, potujui sve faze procesa programiranja, koji omoguava
unos prirodnog broja n i realnog broja x preko tastature te izraunava sumu:
S=sin(x)+sin(sin(x))+sin(sin(... sin(x))), gdje je kod posljednjeg lana sume
funkcija sin primijenjen n puta.
Zadatak
Napiite program, potujui sve faze procesa programiranja, koji omoguava
unos prirodnog broja n i realnog broja x preko tastature te izraunava sumu:

S=cos(x)+ cos(x2)+cos(x3)+ ...+cos(xn),

Zadatak
Napiite program koji korisniku omoguava da unese jedan pozitivan cijeli broj, a
ispisuje taj (jedan) broj obrnuto.
Npr. ako korisnik unese 12345 program treba ispisati 54321.
Zadatak
Napiite program koji omoguava unos prirodnog broja n preko tastature te izraunava
sumu:
1+2 1+2+3 1+2+3+..+n
S= 1-
+ +(1)n1
2! 3! n!

Zadatak
Napiite program potujui sve faze procesa programiranja koji za unesene
prirodne brojeve n i m izraunava sumu:

1 1 1 1
n m n 2m n 3m n mm
S= - + - +(-1)m+1*
Zadatak 6:
Napravite program za raunanje rjeenja kvadratne jednaine, tako da koristite funkcije fx1 i fx2
(funkcija fx1 rauna x1, a funkcija fx2 rauna x2). Kao to znate, rjeenja mogu biti realna
i imaginarna, stoga je potrebno napraviti dvije funkcije (posebno za realna, a
posebno za imaginarna rjeenja).

b b24 ac
x=
2a

Ove funkcije ne bi trebale ispisivati rjeenja na ekran, nego rjeenja trebaju biti
izlaz iz funkcije, a funkcija main bi trebala ispisivati rjeenja kvadratne jednaine
x1 i x2, tj. varijable x1m i x2m. Ovdje nam se javlja jo jedan matematiki
problem: ta ako jednaina nema rjeenja? (npr. za vrijednosti 0,8,2 i 1,2,3) Kako
e nam funkcija koja ne ispisuje nita, koja samo vraa gotovu vrijednost (broj),
javiti da ne postoji rjeenje. Taj problem ne moemo lako rijeiti, u sluaju da ne
postoje rjeenja, da funkcija ispie poruku o greci i vrati vrijednost 0.
Funkcije pozovite na sljedei nain:

void main()
{
float am, bm, cm;
cout << "Unesite clanove a, b, c " << endl;
cin >> am;
cin >> bm;
cin >> cm;
float x1m, x2m;
x1m = fx1(am, bm, cm);
cout << "Rjesenje kvadratne jednacine x1: " << x1m << endl;
x2m = fx2(am, bm, cm);
cout << "Rjesenje kvadratne jednacine x2: " << x2m << endl;
}

Zadatak 7:
Napisati program koji e za uitanu vrijednost N izraunati vrijednost izraza i
ispisati:
S=1+ (1+2)/2!+(1+2+3)/3!+..+(1+2+..+N)/N!;
Zadatak rijeiti pomou funkcije.
Zadatak 8:
Napisati program koji rauna sumu trocifrenih prirodnih brojeva, kojima je zadnja
cifra 2 puta vea od prve cifre. Rezultat ispisati na ekran. Koristiti funkciju.
Zadatak 9:
Napiite funkciju UnesiBroj bez parametara, koja od korisnika oekuje da unese
neki realni broj. Ukoliko je zaista unesen realan broj, funkcija treba da ga vrati kao
rezultat iz funkcije. Ukoliko nije unesen broj, funkcija treba ispisati Neispravan
unos. Molimo, pokuajte ponovo. i ponovo traiti broj, sve dok se zaista ne unese
ispravan broj (prema tome, funkcija ne zavrava dok se ne unese ispravan broj).
Napisanu funkciju iskoristite u programu koji trai da se unesu koeficijenti a, b i c
linearne jednaine ax + b = c, a koji zatim nalazi i ispisuje njeno rjeenje, pod
uvjetom da ono postoji, ili odgovarajuu poruku u suprotnom.

SEDMICA OSAM
Zadatak:
Napisati C++ program koji uitava vrijednosti prijeenog puta u kilometrima, a
zatim vri konverziju u mjernu jedinicu po izboru korisnika: centimetre, milimetre,
milje ili stope. Problem rijeiti pomou funkcija!

1 milja = 1.60935 km
1 stopa = 30.48 cm

Zadatak
Kreirajte i testirajte definicije za sljedee funkcije:
int min(int, int, int);// funkcije usporedjuje i vraa najmanji od tri cijela broja
int max(int, int, int);// funkcije usporedjuje i vraa najveci od tri cijela broja
int kvadrat (int);//funkcija racuna i vraca kvadrat broja
int kub(int); //funkcija racuna i vraca kub broja
bool trivialan (int); //funkcija provjerava je li broj trivialan-prost
bool provjera_bin(int); //funkcija provjerava je li broj binaran

Deklaracije i definicije ovih funkcija e postati sadrajem datoteke zaglavlja


(header file).

Zadatak
Napiite program, koji omoguava unos prirodnog broja n preko tastature te provjerava je zbroj
parnih znamenki unesenog broja djeljiv s 4 i ako je koliko je znamenki zbrojeno.

Upotrijebite funkcije:

bool provjera (int, int &);

Unos prirodnog broja n, ispis odgovarajue poruke i broja zbrojenih znamenki vriti u funkciji main.

Npr. Ako unesete broj 123456 zbroj parnih znamenki iznosi 12; zbrojene su 3 znamenke i 12 je
djeljivo s 4.

Zadatak: Napiite program, potujui sve faze procesa programiranja, kojim


ete simulirati usluge koje Telecom operater nudi prepaid korisnicima (odnosno
vlasnicima Ultra, Hej i slinih paketa). Dakle, korisnik paketa mora biti u
mogunosti pristupiti sljedeim uslugama:
o Pristupiti izborniku usluga pomou svog broja mobitela
o Provjeriti stanje kredita
o Dopuniti kredit
o Poslati dugom korisniku dio svog kredita
o Zavriti (okonati) izbor.

Za svaku od aktivnosti definirajte zasebnu funkciju. Koristite i funkcije koje


vraaju vrijednost i upotrebu referentnih parametara.
Sve dok korisnik ne izabere zadnju opciju (zavri), nakon obavljene aktivnosti
vratite ga na izbornik da odabere novu aktivnost.

Zadatak
Napiite program u kojem ete upotrijebiti funkciju koja zamjenjuje vrijednosti
varijabli a i b vrijednostima sume i razlike tih vrijednosti. Ispis novih vrijednosti
vriti u glavnoj funkciju (programu).
Npr. Ako unesete dvije vrijednosti: a=1 i b=3; funkcija treba da vrati vrijednosti
a=4 (1+3) i b=-2 (1-3).

Zadatak
Napiite program u kojem ete korisniku omoguiti unos jednog prirodnog broja.
Program treba izraunati i ispisati sumu svake druge znamenke broja gledano s
desna na lijevo i broj znamenki koje su sumiranje. Upotrijebite funkciju:

int suma (int, int &);

Zadatak
Napiite program za raunanje rjeenja kvadratne jednadbe. Kao to znate,
rjeenja mogu biti realna i imaginarna, stoga je potrebno napraviti dvije funkcije
(posebno za realna, a posebno za imaginarna rjeenja).

b b24 ac
x=
2a

Zadatak 1:
Napravite sljedee funkcije koje nisu void (napravite funkcije sa povratnom
vrijednou):
- min: iji e izlaz biti manji broj od dva ulazna broja
- max: iji e izlaz biti vei broj od dva ulazna broja
- fakt: iji e izlaz biti izraunati faktorijel
- prost: koja e vraati vrijednost 1 (true) ako je njezin parametar prost broj, ako
nije prost onda vraa vrijednost 0 (false)
- sumakvadrata: koja vraa sumu kvadrata od u1 do u2

Zadatak 2:
Napravite program koji e za pet unesenih brojeva ispisati najmanji, koristei samo gotovu funkciju
min bez upotrebe if-(else)-iskaza.

Zadatak 3:
Napravite funkciju brojac_prostih sa dva ulazna parametra, ija e povratna vrijednost biti
vrijednost koja predstavlja broj prostih brojeva od u1 do u2, tj. izbrojane proste brojeve u rasponu
od u1 do u2.

Napravite test program za funkciju.


Pomo:
- prototip funkcije glasi: int brojac_prostih(int, int);

Zadatak 4: Napisati C++ program, potujui sve faze procesa programiranja,


koji pomou funkcije rauna n-ti lan Fibonacci-evog niza.
Fibonacci- jev niz: 1 1 2 3 5 8 13 21 .

Zadatak 5:
Koristei funkciju za faktorijel napisati program za raunanje binominalnog
koeficijenta prema sljedeoj formuli:

Zadatak 6:
Napravite program za raunanje rjeenja kvadratne jednaine, tako da koristite funkcije fx1 i fx2
(funkcija fx1 rauna x1, a funkcija fx2 rauna x2). Kao to znate, rjeenja mogu biti realna
i imaginarna, stoga je potrebno napraviti dvije funkcije (posebno za realna, a
posebno za imaginarna rjeenja).

b b24 ac
x=
2a

Ove funkcije ne bi trebale ispisivati rjeenja na ekran, nego rjeenja trebaju biti
izlaz iz funkcije, a funkcija main bi trebala ispisivati rjeenja kvadratne jednaine
x1 i x2, tj. varijable x1m i x2m. Ovdje nam se javlja jo jedan matematiki
problem: ta ako jednaina nema rjeenja? (npr. za vrijednosti 0,8,2 i 1,2,3) Kako
e nam funkcija koja ne ispisuje nita, koja samo vraa gotovu vrijednost (broj),
javiti da ne postoji rjeenje. Taj problem ne moemo lako rijeiti, u sluaju da ne
postoje rjeenja, da funkcija ispie poruku o greci i vrati vrijednost 0.

Funkcije pozovite na sljedei nain:


void main()
{
float am, bm, cm;
cout << "Unesite clanove a, b, c " << endl;
cin >> am;
cin >> bm;
cin >> cm;
float x1m, x2m;
x1m = fx1(am, bm, cm);
cout << "Rjesenje kvadratne jednacine x1: " << x1m << endl;
x2m = fx2(am, bm, cm);
cout << "Rjesenje kvadratne jednacine x2: " << x2m << endl;
}

Zadatak 7:
Napisati program koji e za uitanu vrijednost N izraunati vrijednost izraza i
ispisati:

S=1+ (1+2)/2!+(1+2+3)/3!+..+(1+2+..+N)/N!;

Zadatak rijeiti pomou funkcije.

Zadatak 8:
Napisati program koji rauna sumu trocifrenih prirodnih brojeva, kojima je zadnja
cifra 2 puta vea od prve cifre. Rezultat ispisati na ekran. Koristiti funkciju.

Zadatak 9:
Napiite funkciju UnesiBroj bez parametara, koja od korisnika oekuje da unese
neki realni broj. Ukoliko je zaista unesen realan broj, funkcija treba da ga vrati kao
rezultat iz funkcije. Ukoliko nije unesen broj, funkcija treba ispisati Neispravan
unos. Molimo, pokuajte ponovo. i ponovo traiti broj, sve dok se zaista ne unese
ispravan broj (prema tome, funkcija ne zavrava dok se ne unese ispravan broj).
Napisanu funkciju iskoristite u programu koji trai da se unesu koeficijenti a, b i c
linearne jednaine ax + b = c, a koji zatim nalazi i ispisuje njeno rjeenje, pod
uvjetom da ono postoji, ili odgovarajuu poruku u suprotnom.

You might also like