Upload
mihajlo-jonic
View
213
Download
0
Embed Size (px)
Citation preview
7/26/2019 PJ9-UpravljackeStrukture
1/26
1
UPRAVLJAKE STRUKTURE
7/26/2019 PJ9-UpravljackeStrukture
2/26
2
RAZVOJRAZVOJ
Upravljake naredbe u prvom imperativnm programskomjeziku FORTRAN bile su izvedene iz osnovnih mainskihnaredbi! To je period kada metodologija programiranja tek
poinje da se razvija tako da jo nije de"inisan neki osnovniskup upravljakih naredbi!
#oetkom sedamdesetih $irt de"inie metodologijustrukturnog programiranja i programski jezik #as%al sa
skupom upravljakih struktura kojima se implementirajuosnovne algoritamske strukture! Ovaj kon%ept je irokoprihva&en tako da danas vii programski jezi%i imaju
standardan skup upravljakih struktura!
7/26/2019 PJ9-UpravljackeStrukture
3/26
'
MINIMUMMINIMUM
(trukturu selek%ije koja se obino implementira kao)
if* then(t else("+
(trukturu viestruke selek%ije)case , of
-a ) (a+
-b ) (b+
end +
(trukturu itera%ije)
while * do(+
7/26/2019 PJ9-UpravljackeStrukture
4/26
.
KRITERIJUMIKRITERIJUMI
(misao naredbi mora da bude jasan i jednoznaan+
(intaksa naredbe treba da bude tako postavljena dadozvoljava hierarhijsko ugra/ivanje drugih naredbi0
to mora da bude jednoznano de"inisano i jasno iz
samog teksta programa+
#otrebno je da postoji mogu&nost lake modi"ika%ije
naredbi!
7/26/2019 PJ9-UpravljackeStrukture
5/26
PASCAL NEGATIVAN PRIMER-1PASCAL NEGATIVAN PRIMER-1
U ovoj naredbi nije potpuno jasno da li se (b izvrava
kada je *1 "alse ili kada je *1 true i *2 "alse 3toje u ovom sluaju tano4! #roblem postaje jo
oigledniji ako se ista naredba napie u obliku)
7/26/2019 PJ9-UpravljackeStrukture
6/26
5
PASCAL NEGATIVAN PRIMER-2PASCAL NEGATIVAN PRIMER-2
6ierarhijsko
ugra/ivanje naredbi u
ovom jeziku unosivieznanosti!
7/26/2019 PJ9-UpravljackeStrukture
7/26
7
PASCAL NEGATIVAN PRIMER-3PASCAL NEGATIVAN PRIMER-3
Ugra/ivanje novih
naredbi u postoje&i
kod nije jednostavno!
7/26/2019 PJ9-UpravljackeStrukture
8/26
8
SEKVENCA NAREDBI I BLOKSEKVENCA NAREDBI I BLOK
Sekvenca
Blok
7/26/2019 PJ9-UpravljackeStrukture
9/26
9
GLOBALNE I LOKALNE DEFINICIJEGLOBALNE I LOKALNE DEFINICIJE
7/26/2019 PJ9-UpravljackeStrukture
10/26
1:
SOPSTVENE PROMENLJIVE BLOKASOPSTVENE PROMENLJIVE BLOKA
7/26/2019 PJ9-UpravljackeStrukture
11/26
11
STRUKTURA SELEKCIJESTRUKTURA SELEKCIJE
if th!if th!
7/26/2019 PJ9-UpravljackeStrukture
12/26
12
STRUKTURA SELEKCIJESTRUKTURA SELEKCIJE
if th! "#if th! "#
7/26/2019 PJ9-UpravljackeStrukture
13/26
1'
STRUKTURA SELEKCIJESTRUKTURA SELEKCIJEif !$%&'$ #$ (%$!$!)* +, "# (%$!iif !$%&'$ #$ (%$!$!)* +, "# (%$!i
7/26/2019 PJ9-UpravljackeStrukture
14/26
1.
VIESTRUKO GRANANJEVIESTRUKO GRANANJEC$# #t%./t.%$C$# #t%./t.%$
Nestrukturna reenja
7/26/2019 PJ9-UpravljackeStrukture
15/26
1
VIESTRUKO GRANANJEVIESTRUKO GRANANJEC$# #t%./t.%$C$# #t%./t.%$
Nestrukturna reenja
7/26/2019 PJ9-UpravljackeStrukture
16/26
15
VIESTRUKO GRANANJEVIESTRUKO GRANANJE
C$# #t%./t.%$C$# #t%./t.%$(trukturna reenja
Pascal
C
7/26/2019 PJ9-UpravljackeStrukture
17/26
17
VIESTRUKO GRANANJEVIESTRUKO GRANANJE
C$# #t%./t.%$ ADAC$# #t%./t.%$ ADA
(trukturna reenja
7/26/2019 PJ9-UpravljackeStrukture
18/26
18
ITERACIJEITERACIJE
7/26/2019 PJ9-UpravljackeStrukture
19/26
19
A"(," - +%i*%A"(," - +%i*%
7/26/2019 PJ9-UpravljackeStrukture
20/26
2:
A&$ - +%i*%A&$ - +%i*%
7/26/2019 PJ9-UpravljackeStrukture
21/26
21
J$0$ +t")J$0$ +t")
for petljafor (
7/26/2019 PJ9-UpravljackeStrukture
22/26
22
F,% J$0$F,% J$0$
Pt")$ .+%$0")$!$ #$ &0 +%,*!)i0Pt")$ .+%$0")$!$ #$ &0 +%,*!)i0 public class MainClass {
public static void main(String[] arg) {
int limit = 1! int sum = ! for (int i = 1" # = ! i $= limit! i%%" #%%) { sum %= i & #! ' Sstemoutprintln(sum)! ''
7/26/2019 PJ9-UpravljackeStrukture
23/26
2'
P%/i& +t")P%/i& +t")
7/26/2019 PJ9-UpravljackeStrukture
24/26
2.
D%.( .+%$0")$/ #t%./t.%D%.( .+%$0")$/ #t%./t.%
7/26/2019 PJ9-UpravljackeStrukture
25/26
2
D%.( i&)D%.( i&)
7/26/2019 PJ9-UpravljackeStrukture
26/26
25
D%.( i&)D%.( i&)