STRUKTURA GRANANJA UVOD PROGRAMSKA STRUKTURA GRANANJA Omoguuje razliit
- Slides: 27
STRUKTURA GRANANJA UVOD
PROGRAMSKA STRUKTURA GRANANJA § Omogućuje različit tijek programa, ovisno o rezultatu postavljenog uvjeta. Sanda, 2020. 2
BLOK NAREDBI § Dijelovi programa koji se izvode uvjetno, grupiraju se u blokove naredbi. § Omeđuju se parom vitičastih zagrada. § Zbog preglednosti, pišu se uvučeno. Zagrade se mogu izostaviti ako se blok sastoji od jedne naredbe! Sanda, 2020. 3
LOKALNE VARIJABLE § Treba deklarirati cjelobrojnu varijablu x unutar zasebnog bloka, pa joj pridružiti vrijednost. Potom, valja pokušati ispisati vrijednost varijable x u glavnoj funkciji. Upisi cijeli broj u bloku: Vrijednost varijable iz bloka x=. . Sanda, 2020. 4
LOKALNE VARIJABLE BLOK Sanda, 2020. 5
LOKALNE VARIJABLE § Pri pokušaju prevođenja javit će se pogreška. § Varijabla deklarirana unutar bloka, lokalna varijabla, vidljiva je samo unutar tog bloka. U glavnoj funkciji ona ne postoji. Sanda, 2020. 6
NAREDBE GRANANJA § Programska struktura grananja može se ostvariti naredbama: § if (jednostruko uvjetno grananje) § if – else (dvostruko uvjetno grananje) § if – else (višestruko uvjetno grananje) § switch – case (višestruko uvjetno grananje). Sanda, 2020. 7
PRIMJER 26 § Korisnik unosi dva broja, a zatim se određuje i ispisuje veći broj. U slučaju unosa istih brojeva, ispisuje se odgovarajuća poruka. Upisi dva broja: Uneseni su brojevi … i …. Veci je …. ili Brojevi su jednaki. Sanda, 2020. 8
JEDNOSTRUKO UVJETNO GRANANJE § Omogućava izvršenje bloka naredaba samo ako je zadani uvjet ispunjen. § Ako uvjet nije ispunjen, izvršava se prva naredba nakon bloka. Sanda, 2020. 9
JEDNOSTRUKO UVJETNO GRANANJE - IF § Za jednostruko uvjetno grananje rabi se naredba if. § Uvjet je logički izraz, zapisuje se unutar para okruglih zagrada. § Na kraju naredbe if Sanda, 2020. ne stavlja se znak ; 10
PRIMJER 26 A § Primjer 26 riješiti jednostrukim uvjetnim grananjem. 0 0 Sanda, 2020. 11
#include<iostream> Sanda, 2020. using namespace std; int main() { float a, b; cout<<"Upisi dva broja: "<<endl; cin>>a>>b; if(a==b) cout<<"Brojevi su jednaki. "<<endl; if(a>b) { cout<<"Uneseni su brojevi "<<a<<" i "<<b <<endl<<"Veci je "<<a<<endl; } if(a<b) { cout<<"Uneseni su brojevi "<<a<<" i "<<b <<endl<<"Veci je "<<b<<endl; } return 0; } 12
PRIMJER 26 A § Za (a<b): § Za (a==b): Sanda, 2020. 13
DVOSTRUKO UVJETNO GRANANJE § Omogućava da se ovisno o ispunjenju postavljenog uvjeta izvodi jedan od dva neovisna bloka naredbi. Sanda, 2020. 14
DVOSTRUKO UVJETNO GRANANJE § Za dvostruko uvjetno grananje rabi se naredba if - else. Sanda, 2020. 15
PRIMJER 26 B § Primjer 26 riješiti dvostrukim uvjetnim grananjem. Sanda, 2020. 16
PRIMJER 26 B § Za (a>b): § Ako uvjet nije ispunjen (else): Sanda, 2020. 17
PRIMJER 26 B - POGREŠKA § Što ako korisnik unese dva ista broja? Rezultat neće biti ispravan: § Kako izbjeći ovu situaciju? Trebalo bi po ispisu poruke o tom da su brojevi jednaki, program završiti. Sanda, 2020. 18
NAREDBA GOTO § goto – omogućava nastavak odvijanja programa od odabrane naredbe. § Naredba na koju se želi skočiti, tj. od koje se želi nastaviti odvijanje programa, može biti bilo gdje u programu. Treba biti označena oznakom iza koje dolazi znak dvotočke. Sanda, 2020. 19
PRIMJER 26 C § Popraviti primjer 26 B uporabom naredbe goto. Sanda, 2020. 20
GOTO § Čestom uporabom naredbe goto teško je slijediti tijek odvijanja programa što otežava otkrivanje pogrešaka. § Naredbu goto stoga treba izbjegavati i nastojati zadatak rješiti na drugi način, pomoću petlji koje će biti objašnjene kasnije. Sanda, 2020. 21
IF – ELSE KRATKI OBLIK § Ako su uvjet i naredbe uvjetnih blokova kratki, umjesto if - else naredbi može se koristiti skraćeni oblik zapisa. (Koristi se kada uvjet i naredbe blokova stanu u jedan redak. ) Sanda, 2020. 22
IF – ELSE KRATKI OBLIK § Ako se primijeni kratki oblik zapisa, rješenje dijela primjera 26. (zanemarena je mogućnost unosa dva jednaka broja) moglo bi izgledati ovako: Sanda, 2020. 23
PRIMJER 27 § Treba unijeti cijeli broj. Ako je broj paran, treba ispisati njegov sljedbenik, a ako je neparan, treba ispisati njegov prethodnik. Upisi cijeli broj : Broj. . . je paran. Njegov sljedbenik je. . Broj … je neparan. Njegov prethodnik je …. Sanda, 2020. 24
PRIMJER 27 Sanda, 2020. 25
Sanda, 2020. #include <iostream> #include <cmath> using namespace std; int main () { int a; cout<<"Upisi cijeli broj: "; cin>>a; if (a%2==0) { cout<<"Broj "<<a<<" je paran. Njegov sljedbenik je " <<a+1<<endl; } else { cout<<"Broj "<<a<<" je neparan. Njegov prethodnik je" <<a-1<<endl; } return 0; } 26
PRIMJER 27 § Provjera programa: Sanda, 2020. 27
- Struktura grananja
- 24/4(6-4)
- Programska oprema za ispis
- Rtcg programska sema
- što su primjenski programi
- Programska simfonija
- Strojna i programska oprema računala
- Programska muzika
- Strojna i programska oprema računala
- Softver koji upravlja radom računala je
- Uvod u prezentaciju
- Uvod u css
- Uvod zapletka
- Hvala na pažnji medicina
- Uvod u ekologiju
- Kaj je spis
- Gdje se čuvaju slikovni povijesni izvori
- Uvod u znanstveni rad
- Maturski rad literatura
- Radno vreme vozaca nocni rad
- Osnovni pojmovi informatike
- Objektno orijentisano programiranje
- Uvod u hemiju
- Arhitektura baze podataka
- Antigona
- Uvod u digitalnu i mikroracunarsku elektroniku
- Moždanik
- Uvod u teoriju računarstva fer