x
Učitavanje

3.3 Tipovi podataka

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

Na početku...

Marin je vrlo znatiželjan programer početnik. Nedavno je napravio program koji računa opseg kruga sa zadanom duljinom polumjera koju upisuje korisnik. Kako je Marin veliki kreativac, zainteresiralo ga je što bi bilo kada bi računalu umjesto broja 5 upisao pet ili pak five na engleskom jeziku. Čim je probao sve se zacrvenilo, a Python je javio grešku. Što to pak sad znači? zapitao se Marin.

U ovoj jedinici pojasnit ćemo kojim sve vrijednostima i pod kojim uvjetima može manipulirati programski jezik.

Greška u unosu
Sučelje u Windowsima i program Repl.it kako javlja grešku u unosu u Pythonu.

Naredbe ulaza i izlaza

Prisjeti se naredbi ulaza i izlaza iz gradiva petog razreda!

Putem ulaznih naredbi korisnik unosi podatke računalu na obradu, dok se putem izlaznih naredbi ispisuje rezultat obrade.

U prethodnoj jedinici spomenuli smo da svaki programski jezik ima svoju sintaksu, odnosno pravila pisanja. Pravila pisanja jezika ne razlikuju se značajno, no potrebno ih je točno poznavati za ispravno korištenje programskim jezikom. Pogledajmo kako se naredbe ulaza i izlaza zapisuju pseudojezikom, Pythonom i C/C++-om:

naredba pseudojezik Python C/C++
ulaz ulaz() input() scanf()
izlaz izlaz() print() print()

Povucite naredbe ulaza i izlaza u odgovarajuću grupu.

Ruke iznad tipkovnice s jedne i monitor s druge strane.
input

Tipkovnica

Monitor

null
null

Osnovni tipovi podataka

Vrijednosti koje unosimo u programu nužno su nekog tipa. Kada primjerice unesemo 3 , unijeli smo cijeli broj. Ako unesemo 3.2  unijeli smo decimalni broj. Ako unesemo T r u e ili F a l s e , unijeli smo logičku vrijednosti. Ako unesemo  ' M a r i n ' unijeli smo znakovni niz. Kako bi programski jezik znao s kojim tipom vrijednosti ima posla, programer mora uz svaku vrijednost naznačiti kojeg je ona tipa.

Kutak za znatiželjne

Na mrežnoj stranici Code Monster nalazi se tutorijal programiranja u jeziku JavaScript. Sučelje je vrlo simpatično, budući da se iznad uređivačkog dijela prozora nalazi čudovište koje navodi korisnika kako ispravno pisati programski kôd, dok se s desne strane odmah vidi rezultat.

Isprobajte!

CIJELI BROJEVI

Prisjetite se skupa cijelih brojeva Z = { . . . - 3 , - 2 , - 1 , 0 , 1 , 2 , 3 . . . } kod kojeg za svaki član skupa možemo odrediti njegovog prethodnika i sljedbenika.

U programskim jezicima ova je vrsta podataka poznata pod nazivom integer, a ponekad se skraćeno zapisuje int.

Primjeri zapisa cijelog broja:

a = 15

b = - 35  

Cijeli brojevi mogu biti pozitivni i negativi.

null
null
Apsolutna vrijednost broja  - 4 je
,
a apsolutna vrijednost broja  - 16 je
.
null
null

Prethodnik i sljedbenik broja 5 su:

null
null

Cijele brojeve u Pythonu unosimo tako da funkciju input() stavimo unutar funkcije int() koja će uneseno pretvoriti u cijeli broj.

Funkcijom print() ispisat ćemo sadržaj varijable.

Isprobajmo:

null
null

DECIMALNI BROJEVI

Decimalni brojevi sadrže decimalnu točku, koja se na engleskom jeziku naziva floating point. Naziv tipa podataka decimalnih brojeva u programskim jezicima stoga je float.

Primjeri decimalnih brojeva:

a = 3.14  

b = - 6.78000998765

Ponovimo gradivo matematike koje nam je potrebno za razumijevanje tipa podataka float.

Decimalnom broju 4.0 sljedbenik je broj 5.0 ?

null
null
Apsolutna vrijednost broja - 3.14 je
.
null
null

Koji ćemo broj dobiti zaokruživanjem broja 14.56 ?

null
null

Decimalne brojeve unosimo tako da funkciju input() stavimo unutar funkcije float() koja će uneseno pretvoriti u decimalni broj.

Pripazite, u Pythonu se cijeli dio od decimalnog odjeljuje točkom (npr. 3.2 ), dok dva broja odijeljena zarezom predstavljaju uređeni par (npr. 3,2 ).

Funkcijom print() ispisat ćemo sadržaj varijable.

Isprobajmo:

null
null

ZNAKOVNI NIZ

Znakovni niz
Znakovni niz na primjeru

U starijim jezicima poput C-a ili C++-a postoji vrsta podatka char koja služi za zapis samo jednog znaka. Vrsta podataka string koja može sadržavati više znakova ne priprada osnovnim vrstama podataka u takvim programskim jezicima. U Pythonu je string osnovna vrsta podataka, dok char ne postoji. Niz znakova upisujemo unutar navodnih znakova. Svaki znak unutar znakovnog niza ima svoju poziciju, odnosno indeks. Ono na što treba pripaziti jest da je pozicija prvog znaka 0 .

Primjeri znakovnih tipova podataka:

a = ' A '  

b = ' D a n a s j e p r e k r a s a n d a n ! '

Napravimo kratku vježbu:

Koliko znakova ima u nizu znakova "Danas je nedjelja."?
.
null
null

Ako je s= " 123 " , podatak u varijabli s je:

null
null

Na kojem je mjestu slovo z u nizu znakova "Filozofija"?

null
null

Za unos znakovnog niza dovoljno je staviti funkciju input(). Python za unos podrazumijeva da je znakovni niz, ako mu se ne naznači drugačije.

Funkcijom print() ispisat ćemo sadržaj varijable.

Isprobajmo:

null
null

LOGIČKI TIP PODATAKA

Ranije smo rekli da je matematičku logiku smislio engleski matematičar Boole. Njemu u čast nazvan je logički tip podataka. Vrsta podataka boolean služi za zapis samo dvije vrijednosti: True ili False.

Primjeri logičkih tipova podataka:

a = T r u e

b = F a l s e

Logički tip podataka možemo unositi na sva tri prethodno navedena načina. Python za cijeli broj 0 i decimalni broj 0.0 pretpostavlja da su neistiniti, a za cijeli broj 1 i decimalni broj 1.0 da su istiniti. Isto tako, Python za znakovni niz 'True' pretpostavlja da je istinit, dok za znakovni niz 'False' da je neistinit.

Funkcijom print() ispisat ćemo sadržaj varijable.

Isprobajmo unos logičkog tipa podataka tako da ispišemo logički uvjet iz prve jedinice modula tri A + B ¯ · C ¯ .

Unesi vrijednost a kao znakovni niz True ili False.

Unesi vrijednost b kao cijeli broj 1 ili 0.

Unesi vrijednost c kao decimalni broj 1.0 ili 0.0.

null

Upari vrijednosti s vrstom podataka kojoj pripadaju.

100.1
155
'Dobro jutro!'
False
null
null

...i na kraju

Svaki programski jezik ima svoj niz pravila pisanja (sintaksu). Ovom jedinicom pojasnili smo osnovne tipove podataka koje koriste programski jezici, a primjere pokazali u Pythonu. Sljedećom jedinicom pokazat ćemo postupak rješavanja jednostavnih zadataka uz pomoć algoritama.

Procijenite svoje znanje

Povratak na vrh