You are on page 1of 5

1

Grananje
Nisu svi programi u Pascal-u linijski. To znai da se ne izvravaju svi uvek isto. esto nam je potrebno da
se u zavisnosti od nekog uslova izvri jedan od dva razliita niza naredbi. Ponekad takvih izbora ima vie.
Upoznajmo se sa naredbama koje nam to omoguavaju

Naredba if then else
Kljuna re if (ako) dozvoljava programu da napravi izbor na osnovu uslova. Sledei primer trai od
korisnika da unese broj i ispisuje da je broj vei od 5:
program Grananje;
var
i:integer;
begin
writeln(Unesite broj);
readln(i);
if i>5 then writeln(Vei je od 5);
end.
Evo tabele operatora koji se mogu koristiti unutar uslova:
> Vee od
< Manje od
>= Vee ili jednako
<= Manje ili jednako
= Jednako
<> Razliito od
Gornji primer Vam govori samo da je broj vei od 5. Ako elite da Vam kae i da nije vei od 5, onda
koristimo kljunu re else (inae). Kada koristite else ne stavljate taka-zarez na kraj prethodne naredbe.
program Grananje;
var


2
i:integer;
begin
writeln(Unesite broj);
readln(i);
if i>5 then writeln(Vei je od 5)
else writeln(Nije vei od 5);
end.
Ako je uslov taan, onda se izvrava deo posle kljune rei then (onda), a ako je netaan, onda se
izvrava deo posle kljune rei else. Ovo se deava jer su uslovi poput i>5 logiki izrazi. ak moete
dodeliti rezultat logikog izraza logikoj promenljivoj.
program Grananje;
var
i:integer;
b:boolean;
begin
writeln(Unesite broj);
readln(i);
b:=i>5;
end.
Ako elite da stavite vie od jednog uslova, onda stavite svaki uslov u zagrade. Da biste povezali uslove
moete koristiti ili re AND (i) ili re OR (ili). Ako koristite AND onda oba uslova moraju biti tani, a ako
koristite OR onda bar jedan uslov mora biti taan.
program Grananje;
var
i:integer;
begin
writeln(Unesite broj);
readln(i);
if (i>1) and (i<100) then writeln(Broj je izmedju 1 i 100);
end.


3
Ako elite da stavite vie naredbi u naredbu if za bilo koji deo, morate koristiti kljune rei begin i end; da
biste ih grupisali. Primetite da posle ovog endide taka-zarez umesto take.
program Grananje;
var
i:integer;
begin
writeln(Unesite broj);
readln(i);
if i>0 then
begin
writeln(Uneli ste ,i);
writeln(To je pozitivan broj);
end;
end.
Takoe moete koristiti naredbe if unutar drugih naredbi if.
program Grananje;
var
i:integer;
begin
writeln(Unesite broj);
readln(i);
if i>0 then writeln(Pozitivan)
else if i<0 then writeln(Negativan)
else writeln(Nula);
end.

Naredba case
Naredba case (sluaj) lii na naredbu if sem to moete imati vie uslova sa akcijama za svaki.
program Grananje;
uses
crt;


4
var
Izbor:char;
begin
writeln(Koje voce od ovih volite?);
writeln(a Ananas:);
writeln(b Banana:);
writeln(c Cvekla:);
Izbor:=ReadKey;
case Izbor of
a': writeln(Vi volite ananas);
b': writeln(Vi volite banane);
c': writeln(Cvekla nije voce);
else writeln(To voce nije ponudjeno);
end;
end.

Zadaci za vebanje:
1. Napiite program koji unosi dva broja i ispisuje vei.
2. Napiite program koji unosi tri broja i ispisuje najvei.
3. Napiite program koji deli dva uneta broja. Ukoliko je drugi uneti broj nula, ispisuje izvetaj o
greci.
4. Napiite program koji na osnovu unetih duina dve stranice pravougaonika, rauna njegovu
povrinu. Ukoliko je uneta negativna vrednost, ispisuje poruku o greci.
5. Napiite program koji uitava dva broja. Ukoliko je prvi vei od drugog, ispisuje vei. Ako je prvi
manji od drugog, ispisuje manji. Ako su jednaki, ispisuje jednaki.
6. Napiite program koji rauna , ako je x realan broj koji unosi korisnik.
7. Napiite program koji rauna , ako su x i y realni brojevi koje unosi korisnik.
8. Napiite program koji ispisuje ime dana u nedelji na osnovu unetog broja.
9. Napiite program koji ispisuje da li je radni dan na osnovu unetog broja dana u nedelji.
10. Napiite program koji uitava brojanu ocenu i ispisuje uspeh.
11. Napiite program koji na osnovu unetog broja ispisuje ime meseca u godini.
12. *Napiite program koji uitava tri cela broja koji predstavljaju dan, mesec i godinu i ispisuje, u
istom obliku, datum narednog dana.


5
13. Napiite program koji sabira dva uneta broja ako prvi nije deljiv sa 3.
14. Napiite program koji sabira dva uneta broja ako su oba parna.
15. Napiite program koji sabira dva uneta broja ako je bar jedan paran.
16. Napiite program koji uitava dva broja i ispisuje jednu od sledeih poruka, ukoliko je uslov taan:
1. Oba broja su pozitivna.
2. Oba broja su negativna.
3. Bar jedan broj je jednak nuli.
17. Napisati program kojim se za zadate x i y izraunava z po formuli .
18. *Napisati program koji na onovu unetih stranica proverava da li je mogue konstruisati trougao i,
ako jeste, rauna njegovu povrinu.
19. Napisati program kojim se za dato x izraunava y po formuli .
20. Napiite program koji na osnovu unetog broja meseca ispisuje godinje doba.
21. Napiite program koji na osnovu unetog broja meseca ispisuje broj dana u tom mesecu.
22. Napiite program koji uitava dva realna broja i znak operacije u obliku A znak B i ispisuje rezultat
u istom redu posle znaka = ili ispisuje poruku o greci u sluaju deljenja nulom.

You might also like