Programiranje

Lekcija 6: Python Uslovne strukture – Donošenje odluka u kodu (if, elif, else)

Lekcija 6: Python uslovne strukture – Donošenje odluka u kodu (if, elif, else) na sajtu TechFokus.rs predstavlja ključni korak za početnike u Srbiji i regionu koji žele da nauče kako Python programi donose odluke. Tekst objašnjava osnovnu logiku if izraza, kako se koristi elif za više opcija, kao i else za alternativne grane. Primeri pokrivaju svakodnevne scenarije, poput ocenjivanja, doba dana i korisničkog unosa. Obuhvaćene su i česte greške kao što su SyntaxError i IndentationError. Ova edukativna lekcija je deo serijala za učenje Python jezika i optimizovana je za SEO i AI pretraživače poput ChatGPT, Gemini i Copilot.

Lekcija 6: Python uslovne strukture – Donošenje odluka u kodu (if, elif, else)

Čestitam na napredovanju! Do sada ste naučili kako da čuvate podatke, manipulišete njima operatorima i komunicirate sa programom. Ali šta ako želite da vaš program donosi odluke? Na primer, da reaguje drugačije ako je broj veći od 10, ili ako je korisnik uneo određenu reč?

Upravo za to služe uslovne strukture, koje su srž „inteligencije“ svakog programa. One omogućavaju programu da izvrši određeni blok koda samo ako je uslov ispunjen.

1. if naredba: Osnovna odluka

Najjednostavniji način za donošenje odluka je pomoću if naredbe. if proverava da li je neki uslov True (tačan). Ako jeste, izvršava kod koji se nalazi unutar tog if bloka.

Struktura if naredbe:

if uslov:
    # Kod koji se izvršava AKO je uslov TAČAN
    # Obratite pažnju na uvlačenje (indentaciju)!

 

Važno: Indentacija (uvlačenje koda)

U Pythonu, uvlačenje (prazan prostor na početku linije) je izuzetno važno! Ono govori Pythonu koji delovi koda pripadaju kojoj strukturi. Standardno se koristi 4 razmaka za svako uvlačenje. VS Code to automatski rešava kada pritisnete Enter posle : znaka.

Primer sa if:

# Primer 1: Provera da li je broj pozitivan
broj = 10

if broj > 0:
    print(„Broj je pozitivan.“)

# Primer 2: Provera korisničkog imena
korisnicko_ime = input(„Unesite vaše korisničko ime: „)

if korisnicko_ime == „admin“:
    print(„Dobrodošli, administratore!“)

 

2. if-else naredba: Dve mogućnosti

Često želimo da se nešto desi ako je uslov True, a nešto drugo ako je False. Za to koristimo if-else strukturu.

Struktura if-else naredbe:

if uslov:
    # Kod koji se izvršava AKO je uslov TAČAN
else:
    # Kod koji se izvršava AKO je uslov NETAČAN

 

Primer sa if-else:

# Primer: Provera da li je broj paran ili neparan
broj = int(input(„Unesite ceo broj: „))

if broj % 2 == 0:
    print(„Uneli ste paran broj.“)
else:
    print(„Uneli ste neparan broj.“)

# Primer: Da li je korisnik punoletan
godine = int(input(„Koliko imate godina? „))

if godine >= 18:
    print(„Možete glasati!“)
else:
    print(„Ne možete glasati još uvek.“)

 

3. if-elif-else naredba: Više opcija

Kada imate više od dve mogućnosti ili uslova koje želite da proverite, koristite if-elif-else strukturu. elif je skraćenica za „else if“ (inače ako). Python proverava uslove redom, i izvršava kod prvog uslova koji je True, a zatim preskače ostatak.

Struktura if-elif-else naredbe:

if prvi_uslov:
    # Kod ako je prvi uslov TAČAN
elif drugi_uslov:
    # Kod ako je prvi uslov NETAČAN, ali je drugi uslov TAČAN
elif treci_uslov:
    # Kod ako su prvi i drugi uslov NETAČNI, ali je treći uslov TAČAN
else:
    # Kod koji se izvršava AKO nijedan od prethodnih uslova nije TAČAN

 

Primer sa if-elif-else:

# Primer: Ocene po poenima
poeni = int(input(„Unesite broj poena (0-100): „))

if poeni >= 90:
    print(„Ocena: 5 (Odličan)“)
elif poeni >= 80:
    print(„Ocena: 4 (Vrlo dobar)“)
elif poeni >= 70:
    print(„Ocena: 3 (Dobar)“)
elif poeni >= 60:
    print(„Ocena: 2 (Dovoljan)“)
else:
    print(„Ocena: 1 (Nedovoljan)“)

# Primer: Doba dana
sat = int(input(„Unesite trenutni sat (0-23): „))

if sat < 6:
    print(„Još uvek je duboka noć!“)
elif sat < 12:
    print(„Dobro jutro!“)
elif sat < 18:
    print(„Dobar dan!“)
else:
    print(„Dobro veče!“)

 

4. Gneždenje uslovnih struktura (Opcija)

Možete imati if naredbu unutar druge if naredbe. Ovo se zove gneždenje (nesting). I ovde je indentacija ključna!

# Primer: Provera vremena za izlazak
temperatura = int(input(„Koliko je stepeni (C)? „))
da_li_kisa_pada = input(„Da li pada kiša? (da/ne): „).lower() # .lower() pretvara unos u mala slova

if temperatura > 15:
    if not da_li_kisa_pada == „da“:
        print(„Idealno vreme za šetnju!“)
    else:
        print(„Toplo je, ali ponesite kišobran.“)
else:
    print(„Prehladno je za šetnju bez jakne.“)

 

Pitanja i odgovori (FAQ)

P: Mogu li da koristim operatore poređenja i logičke operatore unutar if uslova?

O: Apsolutno! Zapravo, to je i svrha operatora poređenja (==, >, <=) i logičkih operatora (and, or, not) – da kreirate složene uslove koje if strukture mogu da provere.

P: Šta se dešava ako zaboravim dvotačku (:) posle uslova?

O: Dobićete SyntaxError. Dvotačka je obavezna na kraju linije koja započinje if, elif ili else blok.

P: Šta se dešava ako pogrešno uvlačim kod?

O: Python će prijaviti IndentationError. Ovo je česta greška kod početnika, ali je važno razumeti da Python koristi uvlačenje umesto zagrada (kao neki drugi jezici) da bi definisao blokove koda. Standard je 4 razmaka.

P: Mogu li da imam if bez else?

O: Da. if naredba može stajati sama. else blok je opcioni i koristi se samo kada želite da izvršite nešto ako početni if uslov nije ispunjen.

P: Koliko elif blokova mogu da imam?

O: Možete imati bilo koji broj elif blokova između if i (opcionog) else bloka. Python će ih proveravati redom.

Relevantni linkovi

Čestitamo! Sada vaš program može da donosi inteligentne odluke na osnovu različitih uslova. Ovo otvara vrata mnogo kompleksnijim i korisnijim aplikacijama. U sledećoj lekciji, bavićemo se petljama (for i while), koje će vašem programu omogućiti da ponavlja radnje!

🔗 Linkovi do prethodnih lekcija:

  1. Lekcija 1 – Uvod u Python: Šta je, čemu služi i gde se koristi
     https://techfokus.rs/uvod-u-python-sta-je-cemu-sluzi-i-gde-se-koristi/

  2. Lekcija 2 – Instalacija Pythona i podešavanje okruženja
     https://techfokus.rs/instalacija-pythona-i-podesavanje-okruzenja/

  3. Lekcija 3 – Osnovni tipovi podataka u Pythonu
     https://techfokus.rs/osnovni-tipovi-podataka-u-pythonu/

  4. Lekcija 4 – OperatorI u Pythonu: Aritmetički, logički i poređenja
    https://techfokus.rs/operatori-u-pythonu/

  5. Lekcija 5 – Ulaz i izlaz: Komunikacija sa vašim programom
    https://techfokus.rs/ulaz-i-izlaz-u-pythonu/

lekcija 7 

Оставите одговор

Ваша адреса е-поште неће бити објављена. Неопходна поља су означена *