Varijabla (računarstvo)

u programskim jezicima, računarstvu
Za druga značenja pogledajte varijabla (razdvojba).

Varijabla[1][2][3] (prema eng. variable; promjenjivica,[1][2][4] promjenljivica,[3] promjenjivka[5]), u kontekstu programiranja jest ime (polje[6]) kojem je pridružena vrijednost, i ta vrijednost naziva se vrijednošću varijable.

Varijabla je svojevrsno skladište u kom se nalazi podatak, a unutar koga može se tijekom rada mijenjati vrijednosti.[2] Ime varijable čine kombinacije slovnobrojčanih znakova s time da prvi znak ne smije biti znamenka niti znak razgotka.[2] Kakva će biti varijabla, ovisi kakva se pridružba napravila. Varijabli je moguće pridružiti bilo koji tip podatka.[2] Kada se više varijablā poveže operatorima, dobije se izraz.[2]

Varijablu ne shvaćamo kao da je ona samo ime, jer u pojam varijable ulazi i ideja njoj pridružene vrijednosti, kao i ideja vremena kroz koje je vrijednost varijable moguće mijenjati. Dakle, ako bismo htjeli doznati vrijednost neke varijable imena a, ne bi bilo dovoljno pitati: "koja je vrijednost varijable a" - potrebno je pitati koja je vrijednost varijable a u nekom trenutku t. Ovo je u oprjeci s varijablama kakve poznajemo u matematici, iz čijeg je poimanja isključena ideja promjene kroz vrijeme: varijable u matematici mogu poprimati različite vrijednosti, ali samo u različitim kontekstima. Unutar istog konteksta (jednadžba, formula) one su - nepromjenjive.

Nadalje, varijabla nije isto što i njoj pridružena vrijednost: moguće je da postoje dvije različite varijable, koje imaju istu vrijednost. Mijenjajući vrijednost jedne varijable, ne mijenjamo vrijednost druge. Dakle, identitet varijable nije njena vrijednost, nego njeno ime.

Za imena se u programskim jezicima obično koristi nešto preciznija ideja identifikatora, a identifikator je informacija koja je jednoznačna u svom osnovnom kontekstu. Imena varijabli su identifikatori.

Uz pojam varijable, imamo i njoj oprječan pojam konstante; nepromjenjiva je ime kojem je vrijednost pridružena u trenutku uvođenja, te joj nije moguće naknadno pridružiti drugu vrijednost.

Podloga

uredi

Varijabla je naziv koji je izmišljen da bi se imenovala stanovita ideja, i taj naziv se počeo upotrebljavati s pojavom prvih programskih jezika. Pri tome nije bila dana konkretna i jednoznačna definicija varijable, nego se taj naziv počeo rabiti spontano. Iz tog razloga ne postoji jedinstvena definicija varijable, već svaki čovjek može shvaćati varijablu na svoj način, što je često uvjetovano korištenim programskim jezikom.

Tako, iako danas ne postoji jedinstvena definicija varijable oko koje bi se svi mogli složiti, možemo pokušati dati opis ideje što bi varijabla trebala biti, odnosno možemo pokušati opisati najopćenitiji mentalni model varijable.

Svaki programski jezik može imati svoje ostvarenje ideje varijable, često uvjetovano raznim tehničkim ograničenjima. Pri tome to ostvarenje može u nekim detaljima biti u suprotnosti s općenitom idejom varijable, ali tada je to problem tih konkretnih ostvarenja. Kada početnici uče dotični jezik, taj problem može rezultirati teškoćama u shvaćanju ideje varijable, kao i pogreškama koju čine iskusniji korisnici.

Tako u pojedinim programskim jezicima kao dodatno možemo: dobiti adresu varijable, promijeniti vrijednost varijable bez navođenja njenog imena, te promijeniti vrijednost varijable primjenjujući operaciju na samoj vrijednosti varijable. U ovom posljednjem slučaju vrijednost varijable shvaćamo kao vrijednost promjenjivog objekta. U nekim se jezicima varijable shvaćaju kao pokazivači na objekte.

Varijable možemo shvaćati i izvan konteksta programskih jezika. Na primjer, možemo pojmiti varijablu imena stanje_prekidača, čija vrijednost može biti 'uključen' ili 'isključen'.

Ime varijable

uredi

U programskim jezicima varijable su imenovane identifikatorima, koji nam služe da jednoznačno odrede varijablu. Pri tom jedno ime, odnosno identifikator, može pripadati samo jednoj varijabli u određenom kontekstu.

Kao i svi identifikatori u programskim jezicima, ime varijable sastoji se od simbola abecede pojedinog programskog jezika.

Da bi programski jezik mogao razlikovati imena varijabli od drugih sintaktičkih elemenata, poput brojeva, operatora i ključnih riječi, uvijek postoje točna pravila o sintaksi imena varijabli. Tako, najčešće, imena varijablā ne mogu početi brojem i ne smiju sadržavati razmake, odnosno ime varijable je samo jedna riječ.

U nekim programskim jezicima ime varijable može se sastojati isključivo od slova, brojeva, i znaka podvlake _ .

Postoje bitne razlike u osjetljivosti imena varijablā na velika i mala slova (engl. upper case i lower case). U mnogim jezicima je razlika značajna (engl. case-sensitive), to jest kada se dvije riječi razlikuju samo u upotrebi velikih i malih slova, onda one predstavljaju dva različita imena. U drugim jezicima razlika nije značajna (engl. case-insensitive), a postoji i mogućnost da se zabrani uvođenje dvaju imena koji se razlikuju samo u upotrebi velikih i malih slova.

Neka od tipičnih imena varijabli su: i, j, n, a, b, broj, sum, max, retval, point, cijena.

Kao što je vidljivo, za razliku od matematičkih imena, imena se varijabli često sastoje od više znakova.

Tipovi

uredi

U jezicima sa stojnim sustavom tipova, svaka varijabla ima zadan tip, koji tada ograničava vrijednosti koje je dozvoljeno pridružiti varijabli. Tip se tada obavezno navodi prilikom uvođenja varijable.

U jezicima s gipkim sustavom tipova, obično kažemo da izrazi nemaju tip podatka, nego samo vrijednosti imaju tip. S obzirom na to da varijabla može biti izraz, tada varijabla nema tip, nego njena vrijednost ima tip. Tada je moguće varijabli pridružiti bilo koju vrijednost.

Izvori

uredi
  1. a b Julijan Šribar, Boris Motik, Demistificirani C++ : dobro upoznajte protivnika da biste njime ovladali, 3. prošireno izdanje, Element, Zagreb, 2010., ISBN 978-953-197-614-5, (NSK). Mrežno izdanje, citirano kao: Demistificirani C++, 2. izdanje, str. 33.Arhivirana inačica izvorne stranice od 7. rujna 2012. (Wayback Machine)
  2. a b c d e f Fakultet strojarstva i brodogradnje - M. Essert, Tihomir Žilić: MATLAB - Matrični laboratorij (PDF). Inačica izvorne stranice (PDF) arhivirana 17. travnja 2014. Pristupljeno 20. lipnja 2012. journal zahtijeva |journal= (pomoć)
  3. a b Miroslav Kiš, Joško Buljan, Sanja Vuković, Ozren Anić, Englesko – hrvatski informatički rječnik : s računalnim nazivljem, Školska knjiga, Zagreb, 1993., str. 451., varijabla, promjenljivica
  4. Digitalna zbirka Filozofskog fakulteta u Zagrebu Miroslav Tuđman, Damir Boras, Zdravko Dovedan: Uvod u informacijske znanosti. Baze podataka.
  5. Naučite programirati uz C++, 2. izdanje, str. 22. Inačica izvorne stranice arhivirana 20. listopada 2016. Pristupljeno 19. listopada 2016. journal zahtijeva |journal= (pomoć)
  6. Slavko Tkalac, Programski jezik COBOL, Informator, Zagreb, 1983., str. 30. i 31.

Vanjske poveznice

uredi