Python — Promenljive i tipovi podataka

Dobrodošao u drugu lekciju Osnovnog Python kursa! Danas učiš kako Python pamti podatke, kako da koristiš različite tipove vrednosti (i brojeve i tekst), kao i kako da primiš unos od korisnika pomoću input().


1. Šta su promenljive?

Promenljiva je “kutija” u kojoj čuvamo neku vrednost. Ima ime i vrednost, na primer:

x = 10
ime = "Ana"
pi = 3.14

Leva strana (x, ime, pi) je naziv promenljive, a desna strana je vrednost koju čuvamo.


2. Osnovni tipovi podataka

Python ima nekoliko najčešće korišćenih tipova:

  • int – ceo broj (10, -5, 2024)
  • float – decimalan broj (3.14, 2.5, -0.1)
  • string – tekst ("Zdravo", "Python")
  • bool – logičke vrednosti (True, False)

Možeš proveriti tip promenljive pomoću funkcije type():

x = 42
print(type(x))       # 

y = 3.14
print(type(y))       # 

ime = "Ana"
print(type(ime))     # 

aktivno = True
print(type(aktivno)) # 

3. Unos podataka — input()

Funkcija input() zaustavlja program i čeka da korisnik nešto upiše na tastaturi.

Primer:

ime = input("Kako se zoveš? ")
print("Zdravo,", ime)

VAŽNO: input() UVEK vraća string. Ako ti treba broj, moraš da ga konvertuješ:

godine = int(input("Koliko imaš godina? "))
print("Za 10 godina imaćeš:", godine + 10)

4. Formatiranje teksta

Python omogućava više načina da lepo spojiš tekst i promenljive. Najlakši način je f-string (formatirani string):

ime = "Ana"
godine = 14

print(f"{ime} ima {godine} godina.")

Može i na stariji način:

print("{} ima {} godina.".format(ime, godine))

5. MINI PROJEKAT — Program za starost / rođendan

U ovom mini projektu korisnik unosi godinu rođenja, a program izračunava koliko ima godina.

godina_rodjenja = int(input("Unesi godinu rođenja: "))

trenutna_godina = 2025
godine = trenutna_godina - godina_rodjenja

print(f"Imate {godine} godina.")

if godine < 18:
    print("Maloletni ste.")
else:
    print("Punoletni ste.")

Možeš proširiti program da pita i mesec rođenja ili da izračuna koliko dana imaš. Mašti na volju!




6. Praktični primeri unosa podataka

Sada kada znaš kako funkcija input() radi i kako da konvertuješ podatke u brojeve, pogledajmo nekoliko korisnih i realnih primera koje možeš odmah da isprobaš.


Primer 1: Konvertovanje valuta (EUR → RSD)

Korisnik unosi iznos u evrima, a program ga pretvara u dinare po zadatoj kursnoj vrednosti.


kurs = 117.3   # primer kursa

evri = float(input("Unesi iznos u evrima: "))
dinari = evri * kurs

print(f"{evri} EUR je približno {dinari} RSD.")

Primer 2: Pretvaranje ugla (stepeni → radijani)

U matematici se često koriste radijani. Formula je:
rad = stepeni × π / 180


import math

stepeni = float(input("Unesi ugao u stepenima: "))
radijani = stepeni * math.pi / 180

print(f"{stepeni}° iznosi {radijani} radijana.")

Primer 3: Prosek tri broja (odličan za vežbu)

Korisnik unosi tri broja, a program računa njihov aritmetički prosek.


a = float(input("Unesi prvi broj: "))
b = float(input("Unesi drugi broj: "))
c = float(input("Unesi treći broj: "))

prosek = (a + b + c) / 3

print(f"Prosek unetih brojeva je: {prosek}")

Preporuka za dalju vežbu

Ako želiš dodatne zadatke za rad sa promenljivama, tipovima podataka i unosom brojeva, preporučujem da nastaviš ovde:

➡ Primeri zadataka za samostalan rad (podaci i unos)

Na toj strani nalazi se više zadataka sličnog nivoa koji će ti pomoći da savladaš unos podataka, računanje i rad sa brojevima.

7. Napredni zadaci — za učenike koji žele više

Ako si savladao osnovne primere unosa podataka, probaj sledeće zadatke. Oni kombinuju više znanja: unos podataka, matematičke operacije, logiku i formatiranje.


□ Zadatak 1 — Kalkulator prosečne brzine

Napiši program koji izračunava prosečnu brzinu vozila. Korisnik unosi pređeni put (u kilometrima) i vreme vožnje (u satima i minutima).

Zahtevi:

  • korisnik unosi kilometre kao float,
  • unosi sate i minute kao celo brojčane vrednosti,
  • program sve pretvara u sate,
  • računa prosečnu brzinu: v = put / vreme,
  • rezultat prikazuje na dve decimale.

put = float(input("Unesi pređeni put (km): "))
sati = int(input("Unesi vreme — sati: "))
minuti = int(input("Unesi vreme — minuti: "))

ukupno_sati = sati + minuti / 60
brzina = put / ukupno_sati

print(f"Prosečna brzina je {brzina:.2f} km/h.")

□ Zadatak 2 — Program koji izdvaja cifre broja i računa specijalnu vrednost

Korisnik unosi trocifren broj. Program treba:

  • da izdvoji cifre jedinica, desetica i stotina,
  • da izračuna zbir cifara,
  • da izračuna broj obrnutim redosledom (npr. 483 → 384),
  • da ispiše sve rezultate.

Ovaj zadatak koristi operatore // i % i odličan je uvod u rad sa ciframa.


n = int(input("Unesi trocifren broj: "))

stotine = n // 100
desetice = (n // 10) % 10
jedinice = n % 10

zbir = stotine + desetice + jedinice
obrnuti = jedinice * 100 + desetice * 10 + stotine

print("Stotine:", stotine)
print("Desetice:", desetice)
print("Jedinice:", jedinice)
print("Zbir cifara:", zbir)
print("Obrnuti broj:", obrnuti)

Ako želiš još izazovnih zadataka, pogledaj stranicu sa primerima: Primeri za samostalan rad — podaci

Skriveni mini kviz — Promenljive, tipovi i unos podataka

Klikni da proveriš svoje znanje o promenljivama, tipovima i funkciji input()!

Otvori kviz

Mini kviz: Da li si savladao lekciju?

1. Koji tip podataka vraća funkcija input()?




2. Šta će biti rezultat sledećeg koda?

x = 5
y = "3"
print(x + int(y))



3. Koji je pravilno formatiran f-string?




4. Šta radi funkcija type()?




5. Šta će program uraditi?


ime = input("Unesi ime: ")
print("Ćao,", ime)