20
OSNOVE PROGRAMIRANJA U PAJTONU PREDAVANJE 3 - KONTROLA TOKA Miloš Kovačević Đorđe Nedeljković Marija Petronijević Dušan Isailović

OSNOVE PROGRAMIRANJA U PAJTONU · OSNOVE PROGRAMIRANJA U PAJTONU PREDAVANJE 3 - KONTROLA TOKA Miloš Kovačević Đorđe Nedeljković MarijaPetronijević Dušan Isailović. SADRŽAJ

  • Upload
    others

  • View
    28

  • Download
    2

Embed Size (px)

Citation preview

OSNOVE PROGRAMIRANJA U PAJTONU

PREDAVANJE 3 - KONTROLA TOKA

Miloš Kovačević

Đorđe Nedeljković

Marija Petronijević

Dušan Isailović

SADRŽAJ PREDAVANJA

- Grananja

- Petlje

SEKVENCIJALNI ALGORITAM

Algoritam - konačan niz predefinisanih operacija.

Sekvencijalni - svi koraci se uvek obavljaju tačno jednompo redosledu navođenja.

Primer:

Pravougle koordinate tačke transformisati u polarne.

t

SEKVENCIJALNI ALGORITAM - BLOK

Blok – niz programskih redova koji čine logičku celinu,može da sadrži druge blokove

Ugnježđeni (jedan unutar drugog) blokovi se moraju uvući u tekstu programa (postaće očigledno kod naredbi if, for i while)

RAZGRANATI ALGORITAM

Razgranati – niz koraka koji će biti izvršen zavisi od ulaznih podataka

Primer:

Da li je prirodni broj n paran?

Uslov grananja

(zavisi od ulaza n)moguće dve putanje

REPETITIVNI ALGORITAM

Repetitivni – pojedini koraci se ponavljaju(do ispunjenja određenog uslova)

Primer:

Provera parnosti za niz brojeva

ponavlja se sve do unosa broja 0

GRANANJA – VARIJANTE NAREDBE IF

Uslov: logički izraz, po izračunavanju True ili False

npr. x < 5 ili x > 0 && y > 0

NAREDBA IF – PAR-NEPAR

Editori u razvojnim okruženjima vrše uvlačenje automatski po nailasku na <:>

% - ostatak celobrojnog deljenja

Blok naredbe if, zapaziti uvlačenjeza 4 mesta udesno

NAREDBA IF-ELSE – PAR-NEPAR

Korisno je proveriti validnost ulaznih podataka

Naredba if-else (r6-9) je umetnuta u if blok naredbe if-else (r5-11)

Voditi računa o uvlačenju (indentaciji) blokova!

NAREDBA IF-ELIF-ELIF …. ELSE

Izvršava se samo jedan blok!

PETLJE

Višestruko ponavljanje bloka naredbi realizuje se petljama while ili for

Uslov ostanka u petlji određuje broj ponavljanja (iteracija) bloka

Petlja while - broj iteracija ne mora biti poznat unapred

Petlja for - broj iteracija mora biti poznat unapred

NAREDBA WHILE - NAJVEĆI BROJ U NIZU

Treba učitati i proveriti svaki broj – neophodno ponavljanje niza koraka

Nepoznat broj elemenata niza (dok se ne unese 'inf') – while petlja (r10-13)

U toku postupka treba zapamtiti tekući najveći broj – promenljiva maks (r12)

Prvi uneti broj postaje početna vrednost za maks (r9)

NAREDBA WHILE – NAJVEĆI BROJ U NIZU

u svakom postupku treba paziti na specijalne slučajeve

NAJVEĆI BROJ U NIZU – TABELA STANJA

Tok izvršavanja

PREVREMENI IZLAZAK IZ PETLJE - BREAK

MAKSIMALAN BROJ U NIZU - BREAK

U ovom slučaju, bez break – beskonačna petlja (uslov uvek ispunjen)

PETLJA FOR

Ako je unapred poznat broj ponavljanja nekog bloka – petlja for

Funkcija range() – generiše sekvencu celih brojeva

i – brojačka promenljiva

SEKVENCA CELIH BROJEVA – RANGE()

Brojanje počinje od nule!

Brojanje unazad!

PRIMER PETLJE FOR

domen problema → algoritam: treba naći zakonitost za aij

A =

SUMA ELEMENATA MATRICE – PETLJA FOR

unutrašnja petlja: za fiksnu vrednost spoljašnjeg brojača i, brojač j uzima sve dozvoljene vrednosti