Do sada smo naučili kako da napišemo i pokrenemo C++ program, kako da koristimo cout i cin, kako da pišemo komentare i kako da prepoznamo greške.
Sada dolazimo do jednog od najvažnijih pojmova u programiranju:
promenljive
Bez promenljivih ozbiljno programiranje praktično ne postoji.
Ako program ne može da zapamti podatak, ne može:
- da računa,
- da poredi vrednosti,
- da pamti unos korisnika,
- da obrađuje informacije,
- niti da donosi odluke.
Promenljive predstavljaju osnovu gotovo svakog programa.
U ovom tekstu naučićemo:
- šta su promenljive,
- zašto se koriste,
- kako se prave,
- kako se dodeljuju vrednosti,
- kako ih menjamo,
- kako računar čuva njihove vrednosti,
- i koje greške početnici najčešće prave.
Šta je promenljiva?
Promenljivu možemo zamisliti kao kutiju u memoriji računara.
Ta kutija ima:
- ime,
- određeni tip podataka,
- i vrednost.
Na primer:
zamislimo kutiju sa oznakom:
godine
u kojoj se nalazi:
21
To znači:
program je zapamtio broj 21 pod imenom godine.
U C++ to pišemo:
int godine = 21;
Ovo znači:
- napravi promenljivu,
- nazovi je
godine, - sačuvaj vrednost 21.

Zašto su promenljive potrebne?
Bez promenljivih program bi mogao samo da izvršava fiksne instrukcije.
Na primer:
cout << 5 + 3;
Ovaj program ispisuje:
8
Ali ne može da pamti podatke.
Ako želimo da korisnik unese broj:
cin >> broj;
moramo imati mesto gde će taj broj biti sačuvan.
To mesto je promenljiva.
Primer:
int broj;
cin >> broj;
Sada korisnički unos ostaje zapamćen u promenljivoj broj.
Deklaracija promenljive
Kada prvi put pravimo promenljivu, to se zove:
deklaracija
Primer:
int broj;
Ovo znači:
- napravi promenljivu imena
broj, - koja može čuvati celobrojne vrednosti.
Ovde promenljiva postoji, ali još nema dodeljenu konkretnu vrednost.
Dodela vrednosti
Ako želimo da promenljivoj damo vrednost:
broj = 15;
Ovo se zove:
dodela vrednosti
Možemo spojiti deklaraciju i dodelu:
int broj = 15;
To je veoma čest način rada.
Primer programa sa promenljivom
#include <iostream>
using namespace std;
int main() {
int godine = 22;
cout << godine;
return 0;
}
Rezultat:
22
Program ne ispisuje tekst:
godine
već vrednost koja se nalazi u toj promenljivoj.
Promenljiva nije tekst
Ovo je veoma važna razlika.
Pogrešno razmišljanje:
“Program ispisuje ime promenljive.”
Ne.
Program koristi ime promenljive da pronađe vrednost.
Primer:
int poeni = 100;
cout << poeni;
Rezultat:
100
Ako želimo da ispišemo samu reč:
poeni
onda moramo koristiti navodnike:
cout << "poeni";
Kako računar vidi promenljivu?
Računar promenljive čuva u memoriji.
Možemo to zamisliti ovako:
IME: broj
VREDNOST: 15
LOKACIJA: memorija
Programer koristi ime:
broj
ali računar interno koristi memorijsku adresu.
Kasnije ćemo učiti pokazivače i memoriju detaljnije.
Za sada je dovoljno da promenljivu zamišljamo kao imenovanu memorijsku lokaciju.

Menjanje vrednosti promenljive
Promenljiva može menjati vrednost.
Zato se i zove promenljiva.
Primer:
int broj = 10;
kasnije:
broj = 25;
sada:
cout << broj;
rezultat:
25
Stara vrednost se zamenjuje novom.
Primer sa više promena
#include <iostream>
using namespace std;
int main() {
int saldo = 1000;
cout << saldo << endl;
saldo = 1500;
cout << saldo << endl;
saldo = 700;
cout << saldo << endl;
return 0;
}
Rezultat:
1000
1500
700
Dodela iz druge promenljive
Promenljivoj možemo dodeliti vrednost druge promenljive.
Primer:
int a = 10;
int b = a;
Sada:
b
ima vrednost:
10
Ako kasnije promenimo:
a = 20;
b ostaje:
10
jer je vrednost kopirana.
Izračunavanje sa promenljivama
Promenljive možemo koristiti u izrazima.
Primer:
int a = 5;
int b = 3;
int zbir = a + b;
Rezultat:
8
Možemo ispisati:
cout << zbir;
Primer programa sa unosom
#include <iostream>
using namespace std;
int main() {
int broj;
cout << "Unesi broj: ";
cin >> broj;
cout << "Uneli ste: " << broj;
return 0;
}
Ovde:
- korisnik unosi vrednost,
cinje smešta u promenljivu,coutje prikazuje.
To je osnovna interakcija programa i korisnika.

Pravila imenovanja promenljivih
Ime promenljive mora poštovati određena pravila.
Dozvoljeno:
ime
prezime
godine
ukupanZbir
broj1
Nije dozvoljeno:
1broj
ime-prezime
moj broj
Zašto?
Jer C++ ima pravila sintakse.
Ime promenljive:
- može sadržati slova,
- brojeve,
- i underscore
_
ali ne sme početi brojem.
Dobra imena promenljivih
Loše:
int x;
Bolje:
int brojStudenata;
Loše:
int a;
Bolje:
int ukupnaCena;
Dobro ime odmah objašnjava svrhu promenljive.
Case sensitivity
C++ razlikuje velika i mala slova.
Ovo su različite promenljive:
broj
Broj
BROJ
Primer:
int broj = 5;
int Broj = 10;
To su dve potpuno različite promenljive.
Najčešće greške početnika
1. Korišćenje nepostojeće promenljive
Pogrešno:
cin >> broj;
ako nije deklarisana.
Ispravno:
int broj;
cin >> broj;
2. Pogrešno ime
Pogrešno:
int 2broj;
3. Razmak u imenu
Pogrešno:
int moj broj;
4. Mešanje promenljive i teksta
Pogrešno:
cout << "broj";
ako želimo vrednost promenljive.
Ispravno:
cout << broj;
5. Zaboravljena dodela
Pogrešno:
int broj;
cout << broj;
Promenljiva nema sigurnu vrednost.
Neinicijalizovane promenljive
Ako napišemo:
int broj;
ali ne dodelimo vrednost:
broj = ...
onda promenljiva može sadržati nepredvidivu vrednost.
Bolje:
int broj = 0;
ili:
cin >> broj;
uvek dodeliti vrednost pre korišćenja.
Promenljive u realnom svetu
Primer banke:
double stanje = 12500.50;
Primer škole:
int brojPoena = 87;
Primer prodavnice:
double cena = 399.99;
Primer igre:
int zivoti = 3;
Promenljive su svuda.
Zašto su promenljive ključne?
Bez promenljivih nema:
- unosa korisnika,
- matematike,
- logike,
- algoritama,
- petlji,
- funkcija,
- ozbiljnog programiranja.
One su jedna od osnovnih građevinskih jedinica svakog programa.
Rezime
Promenljiva je imenovana memorijska lokacija koja čuva podatak.
U C++ promenljive:
- imaju ime,
- tip,
- i vrednost.
Mogu:
- primati podatke,
- menjati vrednost,
- učestvovati u izračunavanjima,
- i omogućavaju programu da „pamti“.
Razumevanje promenljivih je jedan od najvažnijih koraka u učenju programiranja.
Mini test
- Šta je promenljiva?
a) Funkcija
b) Memorijska lokacija za čuvanje podataka
c) Kompajler - Šta radi:
int broj = 5;
a) Briše broj
b) Pravi promenljivu i dodeljuje vrednost
c) Gasi program
- Da li je dozvoljeno:
int 2ime;
a) Da
b) Ne
- Šta ispisuje:
int poeni = 100;
cout << poeni;
a) poeni
b) 100
- Da li promenljiva može promeniti vrednost?
a) Da
b) Ne
Zadaci za vežbu
- Napravi promenljivu za godine i dodeli joj vrednost.
- Napravi promenljivu za cenu proizvoda.
- Napravi program koji unosi broj i ispisuje ga.
- Napravi promenljivu za broj poena u igri.
- Napravi program sa dve promenljive i zbir.
Domaći zadatak
Napravi program koji čuva:
- ime studenta
- godine
- broj indeksa
- broj poena
i ispisuje ih na ekran.
