5
1 3. 3. Programska struktura Programska struktura Programska struktura opisuje način i redoslijed izvršavanja pojedinih radnji koje dovode do konačnog rješenja zadatka. Razlikuje se nekoliko osnovnih programskih struktura. 2 Primjer Primjer pseudo pseudo jezika jezika Pri opisu programskih struktura rabit će se osnove pseudo jezika koji se rabi u Ispitnom katalogu za državnu maturu iz Informatike. Osnove tog pseudo jezika prikazane su na nekoliko sljedećih slajdova. 3 Varijable Varijable Mjesto u memoriji rezervirano za pohranu podatka naziva se varijabla. Svaka varijabla ima ime koje ju jednoznačno određuje. Ime varijable se u pseudo jeziku može zadati proizvoljno, npr. x, a, TX, B_Pod, AmPe 4 Vrijednost varijable Vrijednost varijable Varijabli se vrijednost pridružuje s pomoću operatora pridruživanja. Operator pridruživanja koji se rabi u ovoj inačici pseudo jezika je znak (:=). Npr. izraz x:=3 se može čitati "varijabli x se pridružuje broj 3". 5 Kraj naredbe Kraj naredbe Algoritam zapisan pseudo jezikom sastoji se od niza naredbi. Svaka naredba ove inačice pseudo jezika završava znakom točka-zarez (;). 6 Operatori Operatori Operatori su simboli koji predstavljaju određene funkcije. Operatori se mogu svrstati u skupine prema vrsti funkcije koju predočuju, npr.: aritmetički operatori, logički operatori, operatori uspoređivanja (relacijski operatori).

3.3.PDF Programska Struktura

Embed Size (px)

Citation preview

Page 1: 3.3.PDF Programska Struktura

11

3. 3. Programska strukturaProgramska struktura

� Programska struktura opisuje način i

redoslijed izvršavanja pojedinih radnji koje

dovode do konačnog rješenja zadatka.

� Razlikuje se nekoliko osnovnih programskih

struktura.

22

PrimjerPrimjer pseudo pseudo jezikajezika

� Pri opisu programskih struktura rabit će se osnove

pseudo jezika koji se rabi u Ispitnom katalogu za

državnu maturu iz Informatike.

� Osnove tog pseudo jezika prikazane su na nekoliko

sljedećih slajdova.

33

VarijableVarijable

� Mjesto u memoriji rezervirano za pohranu podatka

naziva se varijabla.

� Svaka varijabla ima ime koje ju jednoznačno

određuje.

� Ime varijable se u pseudo jeziku može zadati

proizvoljno, npr. x, a, TX, B_Pod, AmPe

44

Vrijednost varijableVrijednost varijable

� Varijabli se vrijednost pridružuje s pomoću operatora

pridruživanja.

� Operator pridruživanja koji se rabi u ovoj inačici

pseudo jezika je znak (:=).

Npr. izraz x:=3 se može čitati "varijabli x se pridružuje broj 3".

55

Kraj naredbeKraj naredbe

� Algoritam zapisan pseudo jezikom sastoji se od niza

naredbi.

� Svaka naredba ove inačice pseudo jezika završava

znakom točka-zarez (;).

66

OperatoriOperatori

� Operatori su simboli koji predstavljaju određene

funkcije.

� Operatori se mogu svrstati u skupine prema vrsti

funkcije koju predočuju, npr.:

� aritmetički operatori, logički operatori, operatori

uspoređivanja (relacijski operatori).

Page 2: 3.3.PDF Programska Struktura

77

AritmetiAritmetiččki operatoriki operatori

OpisPseudo

jezikPascal C/C+ +

Zbrajanje + + +

Oduzimanje - - -

Množenje * * *

Dijeljenje / / /

Cjelobrojno dijeljenje DIV DIV /

Ostatak cjelobrojnoga

dijeljenjaMOD MOD %

88

Operatori dijeljenjaOperatori dijeljenja

� Operator dijeljenja (/) kao rezultat vraća vrijednost

kvocijenta u obliku realnog broja.

� Operator DIV vraća

cjelobrojni dio dijeljenja

dva cijela broja.

� Operator MOD vraća

cjelobrojni ostatak

dijeljenja dva cijela broja.

x := 5;

y := 2;

a := x/y;

b := x DIV y;

c := x MOD y;

a=2,5; b=2; c=1

99

LogiLogiččki operatoriki operatori

OpisPseudo

jezikPascal C/C+ +

Logički I I AND &&

Logički ILI ILI OR ||

Logički NE NE NOT !

1010

Operatori uspoređivanja Operatori uspoređivanja

OpisPseudo

jezikPascal C/C+ +

Manje < < <

Manje ili jednako <= <= <=

Veće > > >

Veće ili jednako >= >= >=

Jednako = = = =

Različito <> <> !=

1111

Redoslijed izvrRedoslijed izvrššavanja operatoraavanja operatora

Redoslijed izvršavanja Operatori

1. ()

2. NE

3. * / DIV MOD I

4. + - ILI

5. <, <=, >=, <>, =

1212

Osnovne programske struktureOsnovne programske strukture

� Osnovne programske strukture mogu se svrstati u tri

skupine. To su:

� pravocrtna programska strutura (slijed, niz),

� struktura grananja,

� struktura petlje.

Page 3: 3.3.PDF Programska Struktura

1313

Pravocrtna struktura (pseudo jezik)Pravocrtna struktura (pseudo jezik)

Opis Pseudo jezik

Unos ulaz

Ispis izlaz

Pridruživanje :=

1414

Pravocrtna programska strukturaPravocrtna programska struktura

� Kao primjer pravocrtne programske strukture može

poslužiti zadatak:

� Korisnik unosi dva broja,

brojevi se zbrajaju pa se

ispisuje dobiveni zbroj.

� Program se odvija uvijek istim i predvidim slijedom

naredbi bez obzira na unesene podatke.

Pravocrtna programska strukturaPravocrtna programska struktura

� Samo u slučaju rješavanja

najjednostavnijih zadataka,

programska struktura je

pravocrtna, tj. program se

uvijek izvršava istim slijedom

naredbi.

15 1616

Programska struktura grananjaProgramska struktura grananja

� Redoslijed izvršavanja naredbi često ovisi o ulaznim

podacima ili međurezultatima obrade.

� Grananje je programska struktura koja omogućuje

različit tijek programa, ovisno o rezultatu

postavljenog uvjeta.

17

Grananje

• Programska struktura koja omogućuje različiti tijek

programa, ovisno o rezultatu uvjeta koji se ispituje:

NEDa li je

x > 0 ?

y=sqr(x)

DA

y=sqrt(x)

X=(A+B)/C

1818

Naredbe pseudo jezika za grananjeNaredbe pseudo jezika za grananje

Opis Pseudo jezik

Grananje

ako je uvjet ondanaredba1

inačenaredba2;

Blok naredbi{

}

�� Dijelovi programaDijelovi programa koji se koji se uvjetno izvodeuvjetno izvode, grupiraju se u , grupiraju se u

skupine ili skupine ili blokove naredbiblokove naredbi..

Page 4: 3.3.PDF Programska Struktura

1919

Programska struktura grananjaProgramska struktura grananja

� Kao primjer programske strukture grananja može

poslužiti zadatak:

� Korisnik unosi

dva broja, a

zatim se

određuje i

ispisuje veći

broj.

Dijagram tijeka grananjaDijagram tijeka grananja

� Dijagram tijeka

grananja za traženje

i ispis većeg od dva

broja.

20

2121

Programska struktura petljeProgramska struktura petlje

� Često je u programu potrebno ponoviti neku radnju

više puta (iterirati). Takva se programska struktura

naziva petlja.

� Ponavljati se može:

� unaprijed zadani broj puta,

� sve dok je ispunjen zadani uvjet.

22

Petlja

Ispisati "Upiši cijeli broj"

Upis broja

Ispisati "Upiši cijeli broj"

Upis broja

Ispisati "Upiši cijeli broj"

Upis broja

...(stotinu puta bi trebalo ponoviti isto)

Umjesto ovoga….

23

Petlja

Ponoviti 100 puta petlju

Ispisati "Upiši cijeli broj"

Upis broja

Kraj petlje

Pišemo ovo….Naredbe pseudo jezika za petljuNaredbe pseudo jezika za petlju

Opis Pseudo jezik

Petlja s unaprijed poznatim brojem ponavljanja

za b := p do k činitinaredba;

Petlja kod koje nije unaprijed

poznat broj ponavljanja, a uvjet

se provjerava na početku petlje

dok je uvjet činitinaredba;

Petlja kod koje nije unaprijed

poznat broj ponavljanja, a uvjet

se provjerava na kraju petlje

ponavljatinaredba; dok je uvjet;

24

Page 5: 3.3.PDF Programska Struktura

2525

Programska struktura petljeProgramska struktura petlje

� Kao primjer programske strukture petlje može poslužiti

zadatak:

� Korisnik treba unijeti

100 cijelih brojeva, a

prije svakog unosa

broja ispisuje se tekst

"Unesi broj".

26

Dijagram tijeka petljeDijagram tijeka petlje

� Dijagram tijeka petlje

za unos sto cijelih

brojeva.

27

Strukturno programiranje

• Strukturno programiranje (engl. structured

programing) skup je programskih postupaka koji vode

logičkoj organizaciji i čitljivosti programa

• Logička organizacija programa olakšava pisanje,

održavanje i popravak programa

28

Strukturno programiranje

• Modularno programiranje je prva i najvažnija metoda

strukturnog programiranja

• Modularno programiranje sastoji se u podjeli

programa u manje cjeline, koje se mogu neovisno

pisati i provjeravati, a po završetku ugraditi u glavni

program