PJ9-UpravljackeStrukture

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&)