GRUPNI RAD • grupni rad (45 minuta): – podijeliti se u grupe od 5 članova – odgovoriti na postavljena pitanja – rasprava o pitanjima – 15 minuta
Preddiplomski stručni studij Telematika
PITANJA • Što je varijabla, a što tip podatka? • Što su jednostavni, a što složeni tipovi podataka (navesti primjere)? • Što su statički, a što dinamički tipovi podataka? • Koja svojstva imaju varijable?
Preddiplomski stručni studij Telematika
Što je varijabla, a što tip podatka • računalo svoju RAM memoriju doživljava kao niz ćelija od 8 bitova (jedan bajt). Svaka takva ćelija ima jedinstvenu adresu (cijeli broj veći ili jednak 0) pomoću koje računalo dohvaća vrijednost koja se čuva unutar ćelije. Maksimalan broj ćelija koje računalo može adresirati (odnosno maksimalna veličina memorije) ovisi o broju bitova koje računalu stoji na raspolaganju za adresiranje ćelija. • kod 32-bitnih računala, za adresiranje memorije računalo ima na raspolaganju 32 bita, odnosno ukupno 232 cijelih brojeva što omogućava adresiranje 4.294.967.296 ćelija (memorijski lokacija) od jednoga bajta, odnosno veličinu memorije od 4GB (gigabajta).
Preddiplomski stručni studij Telematika
Što je varijabla, a što tip podatka • prikaz memorije kako je vidi računalo
1 bit podatka na memorijskoj Binarna vrijednost koja se čuva
lokaciji na memorijskoj lokaciji
Preddiplomski stručni studij Telematika
Što je varijabla, a što tip podatka • pitanje koje se postavlja je kako se iz računalnoga programa pristupa memoriji računala u svrhu upisa vrijednosti nekoga podatka, odnosno dohvaćanja čuvanoga podataka. A prije toga, kako se uopće naređuje računalu da u svojoj memoriji pripremi prostor za čuvanje podataka. • jedan od načina pristupanja memoriji računala je primjena memorijskih adresa. Programer bi trebao znati na kojoj memorijskoj adresi se nalazi neki podatak, odnosno na koju memorijsku adresu se podatak treba spremiti. Ovaj pristup je iz više razloga težak za programere (npr. pamćenje brojeva tipa 13.298.765). Puno je bolji pristup da se memorijskoj lokaciji dodijeli neko simboličko ime (npr. stranicaA) te joj se pristupa preko njega.
Preddiplomski stručni studij Telematika
Što je varijabla, a što tip podatka • varijabla je imenovani dio memorije računala. Preko varijable se izvodi ubacivanje vrijednosti u memoriju računala, odnosno njezino dohvaćanje. • za čuvanje vrijednosti nekog podatka u memoriji računala nužno je znati što ta vrijednost predstavlja (npr. radi li se o cijelom broju, decimalnom broju, znaku itd.), te kakve vrijednosti podatak uopće može imati (npr. 0- 255). Sve ovo je definirano pojmom tip podatka. Dakle, tip podatka definira koliko je potrebno memorijskih lokacija za čuvanje vrijednosti te na koji način se čuvane vrijednosti interpretiraju.
Preddiplomski stručni studij Telematika
Što je varijabla, a što tip podatka • za korištenje memorije računala nužno je računalu narediti da pripremi i rezervira određeni dio svoje memorije (određeni skup memorijskih lokacija) u kome će se čuvati vrijednosti podataka određenoga tipa. Ovo se radi u postupku deklaracije varijable. • deklaracijom varijable u računalnome programu definira se tip podatka (opseg vrijednosti i njezinu interpretaciju) te identifikator varijable (njezin naziv) čime se računalu naređuje da u svojoj memoriji pripremi i rezervira dovoljan broj memorijskih lokacija za taj tip podatka, da tu skupinu memorijskih lokacija nazove simboličkim imenom (identifikatorom varijable) te da ono što će se u tom dijelu memorije čuvati interpretira u skladu sa željenim tipom podatka.
Preddiplomski stručni studij Telematika
Što je varijabla, a što tip podatka • varijable se uvijek trebaju deklarirati prije njihova prvoga korištenja u računalnome programu. • varijabli se u računalnome programu može dodijeliti neka vrijednost (dodjela znači naredba računalu da vrijednost spremi u dio memorije rezerviran za tu varijablu) ili se može dozvati vrijednost koja se čuva u memoriji koja je dodijeljena varijabli. • vrijednost varijabli se pridružuje primjenom operatora pridruživanja (=) na način da se ono što se nalazi na desnoj strani operatora pridružuje varijabli koja se nalazi na lijevoj strani.
Preddiplomski stručni studij Telematika
Koja svojstva imaju varijable? • svaka varijabla ima sljedeća svojstva: – ime (identifikator) – adresa – vrijednost – tip (tip podatka) – trajanje – doseg.
Preddiplomski stručni studij Telematika
Koja svojstva imaju varijable? • ime, odnosno identifikator varijable predstavlja simboličko ime koje će se dodijeliti nekome dijelu memorije računala. Dozvoljeni znakovi u sastavljanju imena (identifikatora) varijabli su: – slova engleske abecede (A-Z, a-z) – brojevi (0-9) – podcrta (underscore '_'). • prvi znak u imenu varijable ne smije biti broj. Ime varijable ne može biti isto kao neka ključna riječ u programskome jeziku (ključna riječ je riječ koja je rezervirana za neko drugo značenje u programskome jeziku – npr. naredbe programskoga jezika). • u nekim programskim jezicima (npr. C, C++, Java) ime varijabli je osjetljivo na veličinu slova (engl. Case-sensitive).
Preddiplomski stručni studij Telematika
Koja svojstva imaju varijable?
Ispravna imena varijabli Neispravna imena varijabli
imePrezime Popis Studenata (u imenu razmak) IMEPrezime Popis-Studenata (u imenu znak -) Popis_Studenata 1godinaPopis (početak imena s brojem) popis1godina 51000 (ime sami brojevi) Umnozak Umnožak (u imenu znak ž) switch (ključna riječ u C-u)
Preddiplomski stručni studij Telematika
Koja svojstva imaju varijable? • prilikom definiranja naziva varijabli dobro je izabrati neko informativno ime koje će otkrivati semantiku vrijednosti koju varijabla čuva (dakle, svrhu varijable). Nepisano je pravilo da naziv varijable počinje malim početnim slovom.
Svrha varijable Dobro ime Loše ime
Stanje na računu stanje_na_racunu, stanje, saldo SR, S, X, X1, X2 Brzina vlaka brzina_vlaka, brzina, brzina_u_Kmh Vlak, B, BV, X, X1, X2 Tekući datum tekuci_datum Datum, Tekuci, TD, X, X1, X2 Broj linija po stranici broj_linija_po_stranici, br_lnij_po_strnc BLS, Linija, L, X1, X2, X3
Preddiplomski stručni studij Telematika
Koja svojstva imaju varijable? • adresa varijable je adresa dijela memorije računala koji je rezerviran za varijablu. U nekim slučajevima u računalnome programu je važno vrijednosti varijable pristupati, odnosno zapisivati preko njezine adrese. • jednom deklariranoj varijabli u nekome računalnom programu, njezina vrijednost se postavlja ili se koristi. Vrijednost varijable predstavlja onu vrijednost koju u određenome trenutku izvođenja računalnoga programa varijabla ima, odnosno koja je zapisana u dijelu rezervirane memorije. Za dodjeljivanje vrijednosti varijable koristi operator pridruživanja (=). Varijabla se treba nalaziti s lijeve strane operatora pridruživanja, a vrijednost koja se dodjeljuje s desne.
Preddiplomski stručni studij Telematika
Koja svojstva imaju varijable? • neka su deklarirane tri varijable stranicaA, stranicaB i povrsina. U memoriji računala su rezervirane tri memorijske lokacije (potencijalno različitih dimenzija što ovisi o tipu podatka koji će se čuvati) za promatrane varijable. • sadržaj memorije računala:
Koja svojstva imaju varijable? • jedna posebna vrsta varijable kojoj je vrijednost moguće postaviti samo jednom u računalnome programu naziva se konstanta. • konstanta je varijabla s predefiniranom vrijednošću koja se u računalnome programu ne može mijenjati.
Preddiplomski stručni studij Telematika
Koja svojstva imaju varijable? • primjena konstante: – oba prikazana programa ispravno računaju maloprodajnu cijenu. U drugome se programu koristi konstanta imena PDV kojoj je vrijednost 1.25 samo jednom dodijeljena. U slučaju da dođe do promjene iznosa PDV-a na 1.23, to bi značilo da bi se u prvome programu trebalo svaku pojavu vrijednosti 1.25 zamijeniti s vrijednošću 1.23. Pri ovome postupku lako je moguće pogriješiti (npr. zaboraviti zamijeniti neku vrijednost ili zamijeniti neku pogrešnu vrijednost i sl.). U drugome programu je dovoljno samo izmijeniti vrijednost konstante PDV (izmjena na samo jednom mjestu značajno smanjuje mogućnost pojave pogreške).
Koja svojstva imaju varijable? • tip podatka varijable definira koliko će računalo rezervirati prostora u svojoj memoriji za tu varijablu, te način na koji će se spremljena binarna vrijednost interpretira (npr. je li to cijeli broj, decimalni broj, znak i sl.). • podjela tipova podataka: Cjelobrojni (npr. -2) Znakovni (npr. $) Jednostavni Logički (npr. False) Statički Interni Realni (npr. 0.5639) Polje (npr. {10, 2, 4}) Složeni Slog (npr. {Marko, 10, 2.65}) Dinamički Lista, Stog, Red, Stablo Tekstualne Niz znakova (ASCII kod) Datoteke Eksterni Tipizirane Niz slogova (sekvencijalne i indeksirane) Baze podataka Niz tablica (SLQ jezik)
Preddiplomski stručni studij Telematika
Koja svojstva imaju varijable? • jednom deklarirana varijabla u nekome računalnom programu (čime se definira njezin tip podatka i identifikator) rezervira odgovarajući prostor u memoriji računala. Rezerviranjem memorijskoga prostora smanjuje se veličina slobodne memorije koja stoji na raspolaganju za rezervaciju drugim varijablama i drugim računalnim programima. • pitanje koje se postavlja je koliko dugo računalo treba držati neki memorijski prostor rezerviran. Jasno je da završetkom izvođenja nekoga računalnog programa, cjelokupan memorijski prostor koji je bio rezerviran za varijable unutar toga računalnog programa sada mora biti oslobođen.
Preddiplomski stručni studij Telematika
Koja svojstva imaju varijable? • postoje slučajevi u kojima, tijekom izvođenja računalnoga programa, a prije njegova završetka, neke varijable više nisu potrebne (npr. tijekom izvođenja procedura). Tada računalo može i prije završetka računalnoga programa izvesti oslobađanje memorijskoga prostora od onih varijabli koje više nisu potrebne. Trajanje varijable je vezano s mjestom i načinom deklariranja varijable i ono pokazuje koliko dugo računalo treba rezervirati neki memorijski prostor.
Preddiplomski stručni studij Telematika
Koja svojstva imaju varijable? • varijabli koja je deklarirana i koristi se u jednome računalnom programu ne može se imenom pristupiti iz drugoga računalnog programa. • njezin doseg pristupa je računalni program u kome je deklarirana. • doseg varijable je moguće ograničiti i u samom računalnom programu kojemu pripada. Naime, moguće je pristup varijabli ograničiti tako da je ona dostupna samo iz određenoga dijela računalnoga programa (npr. samo unutar procedure). Doseg varijable se definira mjestom i načinom njezine deklaracije i on pokazuje iz kojih je dijelova računalnoga programa moguć pristup varijabli.
Preddiplomski stručni studij Telematika
Što su jednostavni, a što složeni tipovi podataka (navesti primjere)? • jednostavni tipovi podataka su tipovi podataka koji se ne mogu rastavljati na manje dijelove (npr. char, int, float, double). • složeni tipovi podataka su tipovi podataka sastavljeni od jednostavnih (npr. polje, niz zakova, zapis)
Preddiplomski stručni studij Telematika
Što su statički, a što dinamički tipovi podataka? • statički tipovi podataka su tipovi podataka kod kojih je prilikom deklaracije varijable veličina potrebne memorije fiksna (npr. char, int, float, double) • dinamički tipovi podataka su tipovi podataka kod kojih prilikom deklaracije varijable veličina potrebne memorije nije fiksna (npr. lista, red, stog , stablo…)
Preddiplomski stručni studij Telematika
Što su statički, a što dinamički tipovi podataka? Tip C jezik Interval Zauzeće memorije znakovni tip [signed] char -127 .. 128 1 byte unsigned char 0 .. 255 1 byte cjelobrojni [signed] int -2147483648.. 2147483647 4 byte tip [signed] short -32768 .. 32767 2 byte [signed] long -2147483648.. 2147483647 4 byte kardinalni unsigned [int] 0 .. 4294967295 4 byte tip unsigned short 0 .. 65535 2 byte unsigned long 0 .. 4294967295 4 byte realni tip float min ± 1.175494351e-38 4 byte maks ± 3.402823466e+38 realni tip double min ± 2.2250738585072014e-308 8 byte dvostuke maks ± 1.7976931348623158e+308 preciznosti