x
Učitavanje

3.1 Što je varijabla

Što ću naučiti?
Europska unija - Zajedno do fondova EU
Sljedeća jedinica
Sadržaj jedinice icon sadržaj jedinice

Na početku...

Patrik je sam izradio program. Šime je taj program nedavno preuzeo  preko mreže. Šimin mlađi brat Josip ostao je potpuno očaran. Pogledajmo video:

Što misliš, tko ili što oblikuje pitanje prikazano na zaslonu računala? Gdje se nalazi pitanje? Na koji se način oblikuje pitanje? Gdje se nalazi odgovor na pitanje? Na koji način računalo odgovara na pitanje?

Odgovori na ova pitanja nalaze se u modulu koji je pred tobom. Krenimo u zajedničku programersku pustolovinu!

Kodiranje

Šime je i sam napravio svoj prvi program. Kao što to obično biva s prvim programima, Šime je kodirao Python da ispisuje poruku "Hello, World!". Odmah je program pokazao cijeloj obitelji, no, njegov mlađi brat Josip nije bio ushićen. "Šime, napravi mi program poput Patrikovog, koji me oslovljava mojim imenom!" rekao mu je. "Ništa lakše!" odgovorio je Šime i bacio se u istraživanje internetskih bespuća dok nije pronašao ovaj digitalni obrazovni sadržaj.

Za početak ćemo pobliže objasniti nekoliko pojmova:

Programiranje

Programiranje je proces izrade programa.

Programiranje ima mnogo faza, a jedna je od njih kodiranje.

Kodiranje

Kodiranje u svijetu programiranja znači pisanje programa u nekom programskom jeziku.

Program je uputa računalu kako riješiti neki problem.

Programski jezik

Programski jezik sadrži skup naredbi. Tim naredbama programer piše upute računalu prema kojima će ono riješiti neki problem.

Svaki program napisan je u nekom programskom jeziku. Programski jezik kojim ćemo se služiti u ovom digitalnom obrazovnom sadržaju jest Python.

Šime i Josip programiraju
Šime i Josip prvi put programiraju u Pythonu. Vidimo obojicu s leđa kako gledaju u zaslon prijenosnog računala na kojem bijelim slovima piše

Za rješenje Šimina problema potrebno je pohraniti ono što korisnik unese, a to je u ovom slučaju korisnikovo ime. Programski jezici koriste varijable za pohranu.

Varijabla

Varijabla

Varijabla je simboličko ime za memorijsku lokaciju.

Računalo u memoriju pohranjuje sve podatke i rezultate obrade. Budući da imena memorijskih lokacija nisu lako pamtljiva, u programiranju uvodimo simbolička imena za njih, tj. varijable.

Varijablu možemo usporediti s ruksakom za školu. U ruksak, ovisno o tome što je tog dana po rasporedu sati, stavljamo udžbenike i bilježnice. Na kraju dana izvlačimo ono što nam sljedeći dan ne treba. Jednako tako, u varijablu možemo pohraniti neku vrijednost te je koristiti, a prema potrebi, varijabli možemo zamijeniti vrijednost.

Varijabla kao ruksak
Ruksak iz kojeg izviruju dvije knjige. Na prvoj je natpis

Imenovanje varijabli

Varijable imenujemo sami, kako želimo, a preporučljivo ih je imenovati tako da imena označavaju ono što u njih pohranjujemo. Pri tome se treba pridržavati pravila imenovanja varijabli pojedinog programskog jezika. U Pythonu, kao i u većini programskih jezika, vrijede sljedeća pravila:

  • ime varijable smije sadržavati samo brojeve, velika i mala slova abecede te crticu
  • ime varijable ne smije započeti brojem.

Označi ispravno napisana imena varijabli:

null
null

Case sensitive

Python je case sensitive programski jezik, što znači da razlikuje velika i mala slova. Primjerice, ako korisnik u program upisuje broj, onda taj broj možemo pohraniti u varijablu imena a. Želimo li kasnije ispisati što se nalazi u varijabli a, moramo paziti da ime varijable pišemo na isti način kao i ranije, što znači da joj ne možemo pristupiti ako upišemo veliko tiskano A.

Tipkovnica s istaknutom tipkom Shift
Tipkovnica slikana na način da je tipka Shift u fokusu dok su druge tipke van njega.

Pridruživanje vrijednosti

Znak jednako (=) u programskom jeziku Python (a i u mnogim drugima) ne označava jednakost koju poznajemo iz matematike. Znak jednako u Pythonu nazivamo "znakom pridruživanja vrijednosti". Ono što je s desne strane znaka jednakosti pridružuje se varijabli čije se ime nalazi s lijeve strane znaka jednakosti. Primjerice, želimo li u varijablu a pohraniti vrijednost 5 , to zapisujemo na sljedeći način:

a = 5

Želimo li ispisati vrijednost koju smo pohranili u varijablu, koristit ćemo naredbu print(). Tako bismo vrijednost varijable  a iz prethodnog primjera ispisali na sljedeći način:

print(a)

Želimo li ispisati više varijabli unutar jedne naredbe print(), tada ih odvajamo zarezom, kao npr. print(a, b).

Kreiraj dvije varijable, a i b . U varijablu a pohrani vrijednost 5 , a u varijablu b vrijednost 8 . Ispiši njihov zbroj!

Pomoć:

Varijabli a pridružujemo vrijednost 5 .

Varijabli b pridružujemo vrijednost 8 .

Unutar naredbe za ispis (print) upisujemo a + b .

Postupak:

a = 5

b = 8

p r i n t a + b

Višestruka pridruživanja

Istu vrijednost, istovremeno, možemo pridružiti različitim varijablama. Primjerice, naredbom a = b = c = 1 varijablama a , b i c dodijelit ćemo istu vrijednost 1 . Ako nekoj od varijabli naknadno mijenjamo vrijednost, ostalim će varijablama vrijednosti ostati nepromijenjene. Isprobajmo!

Kreiraj varijable a , b i c te im dodijeli vrijednost 1 . Ispiši vrijednosti svih triju varijabli. Varijabli a dodijeli novu vrijednost 2 te ponovno ispiši vrijednosti svih triju varijabli.

Pomoć:

Kao što je napisano u prethodnom primjeru, upiši vrijednosti varijable u jednom redu.

Dodijeli varijabli a novu vrijednost 2.

Postupak:

a = b = c = 1

print(a, b, c)

a = 2

print(a, b, c)

Više vrijednosti možemo istovremeno pridružiti različitim varijablama. Primjerice, naredbom a , b , c = 1 , 3.14 , ' Python'  varijabli a pridružit ćemo vrijednost 1 , varijabli b vrijednost 3.14 , a varijabli c vrijednost ' Python' . Isprobajmo!

Kreiraj tri varijable  a ,   b c te im istovremeno pridruži vrijednosti  1 ,   3.14 ' Python' . Ispiši svaku varijablu u svom redu.

Pomoć:

Napiši kôd kao što je navedeno u prethodnom primjeru.

Unutar naredbe za ispis (print) upiši varijablu a. Ponovi isto za varijablu b i c.

Postupak:

a, b, c = 1, 3.14, 'Python'

print(a)

print(b)

print(c)

U prethodnom smo primjeru u varijable a , b i c pohranjivali cijeli broj, decimalni broj te niz znakova. Ono što pohranjujemo u varijable, nazivamo podacima, a podaci su nužno nekog tipa. Koji su osnovni tipovi podataka u Pythonu, prouči u sljedećoj jedinici.

Zamjena vrijednosti

Ovom didaktičkom igrom upravo smo demonstrirali zamjenu sadržaja dviju varijabli. Želimo li zamijeniti sadržaj varijable a i b , treba nam treća varijabla,  c , kojom ćemo se privremeno koristiti.

Zamjenu, kao i kod didaktičke igre, možemo učiniti na dva načina:

  1. a = 'crna mačka'
    b = 'bijeli mačak'
    c = ''
    c = a
    a = b
    b = c
  2. a = 'crna mačka'
    b = 'bijeli mačak'
    c = ''
    c = b
    b = a
    a = c

U oba smo načina sadržaj jedne varijable najprije prebacili u pomoćnu varijablu c te im zatim zamijenili vrijednosti.

U većini programskih jezika zamjenu vrijednosti varijabli radimo na taj način, dok u Pythonu to možemo napraviti mnogo jednostavnije, u jednom redu:

a, b = b, a

Isprobaj zamjenu varijabli a i b korištenjem pomoćne varijable c te pythonovskim načinom!

Postupak:

npr.:

  1. #prvi način
    a = 2
    b = 3
    c = a
    a = b
    b = c
    print(a, b)
  2. #drugi način
    a = 2
    b = 3
    a, b = b, a
    print(a, b)

...i na kraju

Cijela ova jedinica bila je svojevrsna priprema za rješavanje Šimina problema. Pojam varijable sada bi nam trebao biti "u malom prstu". U sljedećoj jedinici ulaz - obrada - izlaz doći ćemo do rješenja Šimina problema, ali i pokrenuti svoje prve "prave" programe!

Povratak na vrh