Professional Documents
Culture Documents
Luka Galović
Luka Galović
Ogulin, J.J.Strossmayera 2
ZAVRŠNI RAD
Programski jezik C++
Uvod ........................................................................................................................................................ 1
Povijesni razvoj programa ....................................................................................................................... 2
Varijable................................................................................................................................................... 4
Što su varijable? .................................................................................................................................. 4
Imena varijabli ..................................................................................................................................... 4
Tipovi varijabli ..................................................................................................................................... 5
Deklasiranje varijabli ........................................................................................................................... 6
Operatori ................................................................................................................................................. 7
Aritmetički operatori ........................................................................................................................... 7
Logički operatori .................................................................................................................................. 8
Operatori uspoređivanja ..................................................................................................................... 9
Operatori uspoređivanja ..................................................................................................................... 9
Funkcije.................................................................................................................................................. 12
Deklaracija funkcije ........................................................................................................................... 12
Definicija funkcije .............................................................................................................................. 12
Poziv funkcije ..................................................................................................................................... 13
STRUKTURA PROGRAMA ....................................................................................................................... 14
Pravocrtna struktura ......................................................................................................................... 14
Struktura granja................................................................................................................................. 14
Struktura petlje.................................................................................................................................. 16
ZNAKOVI ................................................................................................................................................ 18
Zaključak ................................................................................................................................................ 22
Uvod
Računala, pametne telefone i sve ostale pametne uređaje napravio je, barem nekim dijelom
programer na svome računalu.
Mobilne aplikacije, Internet stranice, društvene mreže, oglasnike, Internet trgovinu i ostale
usluge na računalu i pametnim telefonima koje koristimo zasnovane su na programiranju i
izrađene su u nekom programskom jeziku.
Sam Microsoft Windows napravljen je u programskim jezicima i to u baš u onome koji je
glavna tema ovoga završnog rada, Programski jezik C++.
Programski jezik C++ je viši programski jezik koji je razvijen za objektno orijentirano
programiranje. On je jedan od najpoznatiji programskih jezika. Koristi se u mnogim srednjim
školama jer je dobar temelj za ulazak u svijet programiranja. Specifičan je po brzini izvođenja
i minimalnoj količini memorije koji kodovi napisani u tim jezicima zauzimaju.
1
Povijesni razvoj programa
Programski jezik C++ ima povijest koja seže do 1979. godine, kada je Bjarne Stroustrup radio
za svoj doktorat. Jedan od jezika s kojima je Stroustrup imao priliku raditi bio je jezik zvan
Simula, koji je kao što ime govori jezik prvenstveno namijenjen simulacijama. Jezik Simula
67 koji je bio varijanta s kojom je Stroustrup radio - smatra se prvim jezikom koji podržava
paradigmu objektno orijentiranog programiranja. Stroustrup je otkrio da je ova paradigma bila
vrlo korisna za razvoj softvera, no jezik Simula bio je previše spor za praktičnu upotrebu.
Ubrzo nakon toga, počeo je raditi na "C with Classes", koji je, kao što ime implicira, trebao
biti skup C jezika. Njegov cilj je bio dodati objektno orijentirano programiranje u jezik C, koji
je bio i još uvijek je jezik koji se dobro poštuje zbog svoje prenosivosti bez žrtvovanja brzine
ili funkcionalnosti niske razine. Njegov jezik je uključivao klase, osnovno nasljeđivanje,
umetanje, argumente zadane funkcije i jaku provjeru tipa uz sve značajke jezika C.
Godine 1985. Stroustrupova referenca na jezik pod nazivom Programski jezik C++objavljeno
je. Iste godine C++ je implementiran kao komercijalni proizvod. Jezik još nije bio službeno
standardiziran, što knjigu čini vrlo važnom referencom. Jezik je ponovno ažuriran 1989. kako
bi uključio zaštićene i statične članove, kao i naslijeđe iz nekoliko klasa.
Godine 1990. objavljen je Referentni priručnik za C++ s oznakama . Iste godine, Borlandov
Turbo C++ kompajler će biti objavljen kao komercijalni proizvod. Turbo C++ dodao je
mnoštvo dodatnih knjižnica koje bi imale značajan utjecaj na razvoj C++-a. Iako je posljednje
stabilno izdanje Turbo C++-a bilo 2006. godine, prevodilac se još uvijek široko koristi.
Godine 1998., odbor za standarde C++ objavio je prvu međunarodnu normu za C++ ISO/IEC
14882:1998, koji bi neformalno bio poznat kao C++98. Rečeno je da je Referentni priručnik
za C++ s komentarima imao veliki utjecaj na razvoj standarda. Uključena je i Standardna
knjižica predložaka, koja je svoj konceptualni razvoj započela 1979. godine. Godine 2003.
odbor je odgovorio na više problema koji su bili prijavljeni njihovim standardom iz 1998. i
prema tome ga revidirao. Promijenjeni jezik nazvan je C++03.
2
Godine 2005. odbor za standarde C++ objavio je tehničko izvješće (nazvano TR1) s
pojedinostima o raznim značajkama koje su planirali dodati najnovijem C++ standardu. Novi
standard je neformalno nazvan C++0x jer se očekivalo da će biti objavljen negdje prije kraja
prvog desetljeća. Ironično, međutim, novi standard neće biti objavljen do sredine 2011.
godine. Do tada je objavljeno nekoliko tehničkih izvješća, a neki su prevoditelji počeli
dodavati eksperimentalnu podršku za nove značajke.
Sredinom 2011. dovršen je novi C++ . Projekt knjižice Boost izvršio značajan utjecaj na novi
standard, a neki od novih modula izvedeni su izravno iz odgovarajućih Boost biblioteka. Neke
od novih značajki uključivale su podršku za regularne izraze, opsežnu biblioteku
randomizacije, novu C++ vremensku biblioteku, podršku za atomic, standardnu biblioteku
niti, nova sintaksa petlje for koja pruža funkcionalnost sličnu petlji foreach u nekim drugim
jezicima, ključnu riječ auto, nove klase spremnika, bolju podršku za unije i popise za
inicijalizaciju polja i varijable predloške.
3
Varijable
Što su varijable?
Varijable postoje u svakom programskom jeziku. U varijablama pohranjujemo neke
vrijednosti kao što su brojevi, slova i svi drugi znakovi.
Imena varijabli
Svaka varijabla ima svoje ime. Nisu sva imena dozvoljena i moguća. Za to postoje pravila;
- Ime varijable mora biti sastavljeno od slova, cifri i donjih crta
- Prvi znak mora biti slovo. Dozvoljeno je i da donja crta bude prva, ali se ne
preporučuje.
- Rezervirane riječi C sintakse također ne mogu biti varijable.
- Dozvoljeno je upotreba i kombiniranje velikih i malih slova.
- Dužina imena neka ima do 31 znaka. Ne podržava svaki kompajler duža imena
Sljedeća tablica pokazuje primjer ispravnih i neispravnih imena varijabli
Tablica 1.: Prikaz imena varijabli
Ime varijable Ispravnost
Postotak Ispravna
Postotak Ispravna
poSTOtak Ispravna
MarkovNovac Ispravna
a_b_c_d_e__f___ Ispravna
_cijena_ Ispravna, ali se ne
preporučuj
ukupan_broj_predjenih_kilometar Ispravna, ali se ne
preporučuj
M4rk Ispravna
root#komanda Neispravna, jer sadrži znak #
Neispravna, jer sadrži znak
Sličica
sa kvačicom
Neispravna, jer počinje sa
5ak
brojem
Neispravna, jer je to
int
rezervirana riječ sintakse
Neispravna, jer je to
char
rezervirana riječ sintakse
Varijable "Postotak" i "postotak" nisu iste varijable. C je jezik koji je osjetljiv na velika i mala
slova.
Preporučuje se upotreba opisnih varijabli, kao što su "MarkovNovac" i "Ukupna_vrijednost",
jer čine kod razumljivijim nego da se koriste "a", "b", "c", "d"...
4
Tipovi varijabli
U ovom radu pažnju kod varijabli biće usmjerena samo na numeričke varijable. U C-u postoji
nekoliko vrsta numeričkih varijabli. Razlikuju se u količini memorije potrebnoj za
namještanje podataka i opsegu vrijednosti
Tablica 2.: Tipovi varijabli
Rezervirana Potrebno
Tip varijable Opseg vrijednosti
riječ bajtova
Karakteri char 1 od -128 do 127
Cjelobrojni int 2 od -32.768 do 32.767
Kratki cjelobrojni short 2 od -32.768 do 32.767
od -2.147.483.648 do
Dugi cjelobrojni long 4
2.147.438.647
Neoznačeni
unsigned char 1 od 0 do 255
cjelobrojni
Neoznačeni
unsigned int 2 od 0 do 65.535
cijelobrojni
Neoznačeni kratki
unsigned short 2 od 0 do 65.535
cjelobrojni
Neoznačeni dugi
unsigned long 4 od 0 do 4.294.967.295
cjelobrojni
Decimalni sa
od 1,2*10-38 do
jednostrukom float 4
3,4*1038
točnošću
Decimalni sa
dvostrukom double 8 2,2*10-308 to 1,8*10308
točnošću
5
Deklasiranje varijabli
U c-u, varijable se moraju deklarirati prije nego što budu upotrjebljene. Deklaracija varijabli
informira kompajler o imenu varijable i tipu podataka koje ona sadrži i ima sljedeći oblik
ime_tipa ime_varijable;
Primjeri:
int Procenat; /* Procenat je cjelobrojan broj. */
Više varijabla se može deklarirati u istom redu, ali su imena odvojena zarezima:
int suma, zbir, razlika, kolicina, broj_clanova;
Pa su sada sve varijable cijelobrojni brojevi.
Na ovom nivou znanja, najbolje je da sve deklaracije varijabli zajedno stavite neposredno
prije početka main funkcije.
int kolicina;
kolicina = 54;
/* Neki kod. */
Varijabli se može dodijeliti vrijednost pri deklaraciji.
int kolicina = 54;
Ime varijable je zamjena za vrijednost koja joj je pridružena. Ukoliko se desi da se upotrijebi
varijabla, kojoj nije pridružena neka vrijednost ili se pridruži vrijednost koja je van opsega tog
tipa podatka, izlaz aplikacije se ne može predvidjeti.
6
Operatori
Operatori su simboli koji predstavljaju određene funkcije. U C++ je definirano nekoliko sku-
pina operatora, a to su;
- aritmetički operatori
- logički operatori
- operatori uspoređivanja
- ostali operatori
Aritmetički operatori
Operator je simbol koji predstavlja specifičnu akciju. Već smo kod primjera zbrajanja koristili
operator +. Osim operatora + imamo još nekoliko aritmetičkih operatora.
Tablica za pregled operatora
Tablica 3.: Aritmetički operatori
Operator Namjena Primjer Rezultat
+ Zbrajanje 5+6 11
- Oduzimanje 7-3 4
* Množenje 4*4 16
/ Dijeljene 12/6 2
% Dijeljenje (s 5%2 1
ostatkom)
int main()
{
double baza, eksponent, rezultat;
cout << "Unesite broj ";
cin >> baza;
cout << "Unesite eksponent ";
cin >> eksponent;
rezultat = pow(baza, eksponent);
cout << "Rezultat = " << rezultat;
7
char x;
cin >> xreturn 0;
}
Logički operatori
Logički operator je C++ operator za Booleovu operaciju NOT. Ima samo jedan operator s
svoje desne strane i invertira ga, proizvodeći false je ili njegov operand true, a true ako je
njegov operator false. U osnovi, vraća suprotnu Booleovu vrijednost evaluacije svog
operatora.
Primjer:
1 !(5==5)
2 !6<=4)
3 !true
4 !false
Logički operatori &&i ||koriste se pri evaluaciji dvaju izraza za dobivanje jednog relacijskog
rezultata. Operator && odgovara Booleovoj logičkoj operaciji I, koja daje true rezultat ako su
oba njegova operanda true, i false inače. Sljedeća tablica prikazuje rezultat operatora koji &&
procjenjuje izraz a&&b:
Operator ||odgovara Booleovoj logičkoj operaciji OR, koja daje true rezultat ako je bilo koji
od njegovih operanda true, tako da je lažan samo kada su oba operanda lažna. Evo mogućih
rezultata a||b:
Tablica 5.: Operatori ILI
OPERATOR (ili)
a b a || b
true true true
true false true
false true true
false false false
8
Na primjer:
1 ( (5==5) && (3>6) )
2((5==5) ||(3>6) )
Kada koristi logičke operatore, C++ samo procjenjuje ono što je potrebno s lijeva na desno da
bi došao do kombiniranog relacijskog rezultata, zanemarujući ostalo. Stoga, u posljednjem
primjeru ( (5==5)||(3>6)), C++ prvo procjenjuje 5==5je li true, a ako jest, nikada ne
provjerava 3>6je li true ili nije. To je poznato kao procjena kratkog spoja i funkcionira ovako
za ove operatore:
Tablica 6.
Ovo je uglavnom važno kada desni izraz ima nuspojave, kao što je promjena vrijednosti:
if( (i<10) && (++i<n) ) {/*…*/}
Ovdje bi se kombinirani uvjetni izraz povećao iza jedan, ali samo ako je uvjet s lijeve strane ,
jer &&se true inače uvjet na desnoj strani ( ++i<n) nikada ne vrednuje.
Operatori uspoređivanja
U programskom jeziku C++ kao i u mnogim drugim programskim jezicima postoje odnosni
operatori. Takvi operatori se npr. koriste ako želite napraviti program koji će iz baze podataka
odrediti osobe sa više od 30 godina i slično.
Evo tih odnosnih operatora:
Tablica 7.
Operator Značenje
> Više od …
< Maje od…
>= Više ili jednako…
<= Manje ili jednako…
== Jednako
!= Različito
Operatori uspoređivanja
Kao i aritmetički operatori, odnosni operatori su binarni tj. uspoređuju dva operanda. Naredba
sa dva operanda i odnosnim operatorom zove se odnosna naredba. Rezultat odnosne naredbe
je Boolean vrijednost odnosno istinu ili laž (true ili false). S ovom tablicom možete vidjeti
kako to funkcionira
9
Tablica 8.
Odnosna naredba Vraćena vrijednost
4 == 4 Istina
4<4 Laž
4 <= 4 Istina
4>4 Laž
4 != 4 Laž
4 == 5 Laž
4<5 Istina
4 >= 5 Laž
4 != 5 Istina
U ovoj tablici se koriste konkretne ( literal ) vrijednosti koje ne mogu biti promijenjene. 4 je
konkretna vrijednost (konstanta), i ona se ne može mijenjati (moglo bi se mijenjati da je umje-
sto konstanta koristimo varijable)
char x;
cin >> x;
return 0;
}
Ovaj program će ispisati:
0
0
0
1
1
S time da 0 predstavlja laž (false) a 1 istinu (true)
10
11
Funkcije
U većini programa postoje cjeline koje se ponavljaju više puta. Kako bi se izbjeglo opetovano
pisanje istih ili vrlo sličnih dijelova programa, može ih se izdvojiti, imenovati i spremiti na za
to predviđenu lokaciju. Izdvojeni nizovi naredbi koji čine logičke cjeline, a obavljaju točno
utvrđene zadatke nazivaju se funkcije. Moguće je:
Biblioteke se isporučuju uz program C++ pa ih svaki programer može uključiti u svoj pro-
gram i zatim rabiti njihove funkcije.
Deklaracija funkcije
Poput varijable i funkciju treba deklarirati tj. najaviti i jednoznačno odrediti. Pri deklaraciji
funkcije osim njenog naziva navodi se tip funkcije, tj. tip podatka koji funkcija vraća poziva-
telju kao rezultat svog rada (izlazni podaci) te broj i tip podataka koji se predaju funk-
ciji prilikom njezina poziva (argumenti, ulazni podaci).
Naziv funkcije se zadaje poštujući pravila tvorbe simboličkih imena (identifikatora).
Tablica 9.
Opći oblik deklaracije funkcije
tip funkcije naziv funkcije (popis argume-
nata)
Tablica 10.
Primjer deklaracije funkcije
float volumen_kvadra (float a, float b, float c) Naziv: volumen_kvadra
Tip funkcije: realni broj
Argumenti: tri realna broja
Definicija funkcije
Svaka se funkcija sastoji od skupa naredbi koje određuju što i kako funkcija radi. Taj se skup
naredbi naziva tijelo funkcije. Tijelo funkcije započinje nakon otvorene vitičaste zagrade ({),
a završava zatvorenom vitičastom zagradom (}).
Zbog preglednosti uobičajeno je tijelo funkcije pisati uvučeno u odnosu na ostali izvorni kôd.
Tijelo funkcije se sastoji od naredbi. Svaka naredba završava znakom točka-zarez (;). Više
naredbi se može zapisati u jednome retku, ali svaka od njih mora završiti znakom točka-zarez
(;). Naredba se može protezati i kroz nekoliko redaka; važno je samo da na kraju bude znak
točka-zarez (;).
Funkcija završava ključnom riječi return. Iza ključne riječi return se zapisuje podatak kojeg
funkcija vraća pozivatelju kao rezultat svog rada (u primjeru koji slijedi funkcija vraća sadržaj
varijable v).
12
Tablica 11.
Funkciju volumen_kvadra
float volumen_kvadra (float a, float b, float c)
{
float v;
v=a*b*c;
return v;
}
Poziv funkcije
Jedina funkcija koja se automatski pozove, prilikom startovanja aplikacije je main funkcija.
Naredbe u main se izvršavaju redom odozdo na dole i kada se završi posljednja naredba pro-
gram se završava. Ako u projektu imamo definirano još funkcija one se neće izvršiti same od
sebe. Da bi program iz main nastavio izvršenje u nekoj drugoj funkciji, jedna od naredbi u
main mora biti poziv neke druge.
U primeru na slici 3 poziva se funkcija max:
naziv_funkcije(parametar1,parametar2,....);
13
STRUKTURA PROGRAMA
Programska struktura je ustrojstvo programa, tj. način i redoslijed rješavanja pojedinih ma-
njih radnji da bi se došlo do konačnog rješenja zadatka. Nekoliko je programskih struktura
koje se ponavljaju u mnogim računalnim programima. To su:
Pravocrtna struktura
Tablica 13.
Zadatak :
Potrebno je unijeti cijenu proizvoda c i postotak sniženja p pa izračunati cijenu proizvoda na-
kon sniženja i ispisati je.
Algoritam zadatka napisati pseudo jezikom.
Primjer:
Ulaz (c, p);
s := c –(c*p)/100;
izlaz (s);
Struktura granja
Grananje je programska struktura koja omogućuje različit tijek programa, ovisan o rezultatu
postavljenog uvjeta. To je važna struktura bez koje bi mogućnost rješavanja zadataka računa-
lom bila vrlo ograničena. Rezultat postavljenog uvjeta mora biti jedno od dva stanja:
true/false, da/ne, istina/laž, 1/0. Vrijednost rezultata uvjeta bit će 1 ako je uvjet zadovoljen i 0
ako uvjet nije zadovoljen.
Dijelovi programa koji se uvjetno izvode, grupiraju se u skupine ili blokove naredbi. Svaki
se blok naredbi u ovoj inačici pseudo jezika omeđuje parom otvorena i zatvorena vitičasta za-
grada ({ }). Ako blok naredbi ima samo jednu naredbu zagrade se mogu izostaviti. Blokovi
naredbi se obično pišu uvučeno zbog preglednosti.
14
U dijagramu tijeka se za grananje koristi geometrijski lik romb:
Slika 1. Dijagram tijeka grananja
Zadatak :
Potrebno je unijeti prirodni broj pa provjeriti da li je taj broj istodobno djeljiv sa 7 i s 9. Ispi-
sati rezultat. Algoritam zadatka napisati pseudo jezikom i nacrtati dijagram tijeka.
ulaz (x);
s :=x MOD 7;
d :=x MOD 9;
ako je ((s = 0) I (d = 0)) onda
izlaz („Broj je djeljiv sa 7 i s 9“)
inače
izlaz („Broj nije djeljiv sa 7 i s 9“);
15
Slika 2.: Dijagram tijeka prethodnog zadatka
Struktura petlje
Često je u programu potrebno ponoviti neku radnju više puta. Da se ne bi ista naredba pisala
više puta, postoji programska struktura petlje koja omogućava ponavljanje jedne ili više na-
redbi.
16
Zadatak :
Potrebno je unijeti 100 cijelih brojeva. Prije svakog unosa broja ispisati tekst “Unesi broj”.
Algoritam zadatka napisati pseudo jezikom i nacrtati dijagram tijeka.
za k := 1 do 100 činiti
{
izlaz („Unesi broj“);
ulaz (x);
}
U ovom se primjeru petlja ponavlja sto puta. To je ostvareno naredbom:
za k := 1 do 100 činiti
Pri svakom prolazu petlje vrijednost varijable k se poveća za jedan (od početne vrijednosti 1
do krajnje vrijednosti 100).
Slika 3.
17
ZNAKOVI
Ako je podatak znak, njegova oznaka tipa je char. Varijabli označenoj s char može se pridru-
žiti:
Tablica 16.
U gornjem primjeru u varijable slovo1 i slovo2 će se u oba slučaja spremiti ista vrijednost,
znak A i to u obliku broja koji predstavlja ASCII vrijednost znaka A. Programer može birati
način pridruživanja koji mu je pogodniji.
Za pohranu znaka u memoriji je predviđen 1 bajt (8 bitova). 1 bajt omogućava pohranu jed-
nog od 28 = 256 različitih znakova.
Zadatak 1
Prvi zadatak se temelji na pravocrtnoj strukturi. Da bi dobili rješenje zadatka treba unijeti
vrijeme u sekundama te će nam program izračunati koliko je to sati, minuta i sekundi.
Programski kod napisan u Dev-C++
#include<iostream>
using namespace std;
int main()
{
int s, sek, min, sat, ostatak;
cout<<"Upisi vrijeme u sekundama:";
cin>>s;
sat=s/3600;
ostatak=s%3600;
min=ostatak/60;
sek=ostatak%60;
cout<<s<<" sekundi je "<<sat<<" sati, "<<min<<" minuta i "<<sek<<" sekundi."<<endl;
18
return 0;
}
Slika 4.: Rješenje Zadatka 1
Zadatak 2
Drugi zadatak temelji se na strukturi grananja. Program radi tako da na osnovu uneseni
podataka, program izračuna opseg ili površinu trokuta ovisno o našoj želji. Za računanje
opsega moramo upisati 1, a za površinu 2 bilo koji drugi broj numerirat će se kao pogrešan
unos i program će nas vratiti na poćetak.
Programski kod napisan u Dev-C++
#include<iostream>
#include<cmath>
using namespace std;
int main()
{
cout<<"Program na osnovu unesenih vrijednosti stranica trokuta racuna ";
cout<<" opseg ili povrsinu, ovisno o zelji korisnika"<<endl;
float a,b,c,o,p,p1,pov;
int i;
cout<<"Za izracun opsega upisi 1, a za povrsinu 2:";
19
cin>>i;
cout<<"a = ";
cin>>a;
cout<<"b = ";
cin>>b;
cout<<"c = ";
cin>>c;
if((a<=0)||(b<=0)||(c<=0))
{
cout<<"Vrijednost stranice trokuta ne moze biti <=0 " <<endl;
goto kraj;
}
if((a+b<=c)||(b+c<=a)||(c+a<=b))
{
cout<<" Unesene vrijednosti nisu stranice trokuta." <<endl;
goto kraj;
}
switch(i)
{
case 1:
o=a+b+c;
cout<<"Opseg trokuta je O= "<<o<<endl;
break;
case 2:
cout<<"Povrsina se racuna po Herenovoj formuli";
p=(a+b+c)/2;
p1=p*((p-a)*(p-b)*(p-c));
pov=sqrt(p1);
cout<<" Povrsina trokuta je P= "<<pov<<endl;
break;
default:
20
cout<<" Pogresan unos. Treba unesti broj 1 ili 2! " <<endl;
}
kraj:return 0;
}
Slika 5. Rješenje Zadatka 2
21
Zaključak
U svom završnom radu obradio sam programski jezik C++, koji je jedan od najpopularnijih
objektno orijentiranih programa. Za ovaj program sam se odlučio iz razloga što predstavlja
odličan temelj za ulazak u svijet programiranja, te se koristi u brojnim srednjim školama.
U završnom radu sam obradio povijesni razvoj programa, sintaksu i strukturu programa. Kroz
rad pojasnio sam i varijable, operatore i funkcije koje su temelj za rad u programu. Također
obuhvatio sam i strukturu programa C++.
Osim teorijskog dijela programa C++ obradio sam nekoliko primjera zadataka u kojima sam
koristio već navedene teorijske dijelove programa. U prvom zadatku sam napravio
jednostavni programski kod koji koristi pravocrtnu strukturu, a služi nam da uneseno vrijeme
u sekundama preračuna i prikaže rezultat u satima, minutama i sekundama.
U drugom zadatku prikazao sam kodom složeniji primjer strukture grananja, koji nam služi za
računanje površine ili opsega trokuta ovisno o našem izboru. Primjer složene strukture u
programu dolazi do izražaja kada unesemo krivu vrijednost, program nas obavještava da je
unesena kriva ili netočna vrijednost te nas vraća na početak programa.
Cijeli sadržaj rada grafički je popraćen slikama i tablicama s primjerima obuhvaćenih tema ili
polutema.
Tijekom svog školovanja u radu s programskim jezikom C++ stekao sam osnove znanja i
vještine u programiranju, te smatram C++ odličnom odskočnom daskom u svijet ozbiljnijeg
programiranja.
22
Popis literature
1. Sarić Slaven (2007) „C#“, Varaždin
2. Jakopec Ratko (2006) „C++“, Varaždin
3. W3schools - C++ Tutorial https://www.w3schools.com/cpp/default.asp
4. Cplusplus - https://www.cplusplus.com/doc/tutorial/operators/
5. Tutorijali.net - C++ Tutorial http://www.tutorijali.net/cpp/odnosni-operatori
6. Codecademy - C++ https://www.codecademy.com/
7. Guru99 - What is C++? https://www.guru99.com/cpp-tutorial.html
8. Uvod u C - Jezik https://www.znanje.org/knjige/computer/c/c_mm/jezik.htm
9. Loomen - Uvod u programiranje https://loomen.carnet.hr/course/view.php?id=2591
23