Tipovi podataka Pod tipom podataka se podrazumeva skup

  • Slides: 28
Download presentation
Tipovi podataka

Tipovi podataka

� Pod tipom podataka se podrazumeva skup vrednosti koje može dobiti neka promenljiva i

� Pod tipom podataka se podrazumeva skup vrednosti koje može dobiti neka promenljiva i skup operacija nad datom promenljivom

Promenljiva je deo memorije računara u koji može da se smesti neka vrednost �

Promenljiva je deo memorije računara u koji može da se smesti neka vrednost � Promenljivu karakterišu ime, tip i vrednost. � Ime služi za obraćanje memorijskoj lokaciji u kojoj se čuva vrednost promenljive � Pre korišćenja svaka promenljiva koja se koristi u programu se mora deklarisati (opisati) u odeljku za opis promenljivih (VAR) �

Standardni tipovi podataka � Celobrojni tip – INTEGER � Realni tip – REAL �

Standardni tipovi podataka � Celobrojni tip – INTEGER � Realni tip – REAL � Logički tip – BOOLEAN � Znakovni tip - CHAR

Celobrojni tip - INTEGER Celobrojni tip je podskupa celih brojeva � Skup celih brojeva

Celobrojni tip - INTEGER Celobrojni tip je podskupa celih brojeva � Skup celih brojeva je skup koji obuhvata sve prirodne brojeve, nulu, kao i sve negativne brojeve � Od načina registrovanja celog broja u memoriji računara zavisi njegov opseg vrednosti � + cifra -

TIP INTERVAL MEMORIJA byte 0. . 255 8 bitova=1 byte shortint -128. . 127

TIP INTERVAL MEMORIJA byte 0. . 255 8 bitova=1 byte shortint -128. . 127 8 bitova=1 byte integer -32768. . 32767 16 bitova=2 byte longint -231. . 231 -1 32 bitova=4 byte word 0. . 65535 16 bitova=2 byte int 64 -263. . 263 -1 64 bitova=8 byte

Aritmetičke operacije �* -množenje � div – celobrojno deljenje Istog prioriteta � mod –

Aritmetičke operacije �* -množenje � div – celobrojno deljenje Istog prioriteta � mod – izdvajanje ostatka pri celobrojnom deljenju � + - sabiranje � - - oduzimanje � Redosled prioriteta kao što je zapisano, operacije istog prioriteta izvršavaju se sleva nadesno.

Primeri: � Div – division (deljenje) › a div b 25 div 7 =

Primeri: � Div – division (deljenje) › a div b 25 div 7 = 3 2 div 4 = 0 7 div -5 = -1 � Mod – modulus (mera) -7 div 5 = -1 -7 div -5 = 1 › Operacija je definisana za b≠ 0 25 mod 7 = 4 2 mod 4 = 2 7 mod -5 = 2 -7 mod 5 = -2 -7 mod -5 = -2

Standardne funkcije � Standardne funkcije koje daju celobrojan rezultat: › › � abs(x) –

Standardne funkcije � Standardne funkcije koje daju celobrojan rezultat: › › � abs(x) – apsolutna vrednost od x sqr(x) – kvadrat od x; x 2 succ(x) – sledeći ; x+1 pred(x) – prethodni; x-1 Standardne funkcije koje daju realan rezultat: › › sin(x) – sinus od x cos(x) – kosinus od x arctan(x) – arkus tangens od x sqrt(x) – kvadratni koren iz x

� Operacije poređenja daju rezultat logičkog tipa (true, false) =, < >, <, >,

� Operacije poređenja daju rezultat logičkog tipa (true, false) =, < >, <, >, <=, >= � Funkcija odd(x) daje rezultat logičkog tipa: › True – ako je x neparno › False - ako je x parno

Zadatak 1 � Izračunati vrednost sledećih izraza: › 16 div 3 – 16 mod

Zadatak 1 � Izračunati vrednost sledećih izraza: › 16 div 3 – 16 mod 3 = › 4 mod 2 * 5 + 4 =

Realni tip podataka - REAL � Realni tip je prosti tip podataka koga čine

Realni tip podataka - REAL � Realni tip je prosti tip podataka koga čine svi brojevi. � Najčešće korišćeni realni tipovi su: › REAL › DOUBLE › EXTEND

Operacije koje daju realan rezultat * - množenje / - deljenje + - sabiranje

Operacije koje daju realan rezultat * - množenje / - deljenje + - sabiranje - - oduzimanje � U ovim operacijama jedan operand može biti ceo broj. � Ako je izraz sastavljen od celobrojnih i realnih vrednosti rezultat je realan broj.

Funkcije koje daju realan rezultat � abs(x) – apsolutna vrednost od x � sqr(x)

Funkcije koje daju realan rezultat � abs(x) – apsolutna vrednost od x � sqr(x) – kvadrat od x � sin(x) – sinus od x � cos(x) – kosinus od x � arctan(x) – arkus tangens od x � sqrt(x) – kvadratni koren od x � frac(x) – vraća razlomljeni deo od x � int(x) – vraća celobrojni deo od x

Primeri: � frac(1. 23) = 0. 23 � frac(3. 75) = 0. 75 �

Primeri: � frac(1. 23) = 0. 23 � frac(3. 75) = 0. 75 � int(1. 23) = 1. 00 � int(3. 75) = 3. 00 Vrednost funkcije je između 0 i 1

Funkcije koje daju celobrojnu vrednost � trunc(x) – izdvaja celobrojni deo realnog broja (x)

Funkcije koje daju celobrojnu vrednost � trunc(x) – izdvaja celobrojni deo realnog broja (x) � round(x) – zaokružuje argument x do najbližeg celog broja

Primeri: � trunc(6. 3) =6 � trunc(-4. 7) = -4 � trunc(3. 236) =

Primeri: � trunc(6. 3) =6 � trunc(-4. 7) = -4 � trunc(3. 236) = 3 � round(4. 678) =5 � round(-5. 35) = -5 � round(3. 5) = 4 � round(-3. 5) = -4

Zadatak 2 � Izračunati vrednost sledeći izraza: › -7 + 4 * 5 div

Zadatak 2 � Izračunati vrednost sledeći izraza: › -7 + 4 * 5 div 2 * round(2. 367) – 3*4 = › (trunc(7. 3) – round(4. 6)) * 2 mod 5 div 2 =

Logički tip podataka BOOLEAN � Koristi se kod programa kod kojih treba odrediti da

Logički tip podataka BOOLEAN � Koristi se kod programa kod kojih treba odrediti da li je nešto tačno ili netačno. � Rezultat određivanja može biti TRUE ili FALSE � U računaru se ove vrednosti prikazuju kao: › TRUE ima vrednost 1 › FALSE ima vrednost 0 TRUE >FALSE

Dozvoljene operacije � Not - negacija � And – konjukcija � Or – disjunkcija

Dozvoljene operacije � Not - negacija � And – konjukcija � Or – disjunkcija � Xor – ekskluzivna disjunkcija

p q not p p and q p or q p xor q false

p q not p p and q p or q p xor q false false true true false true false

Prioriteti: not and or � Primer : � p or q and r p

Prioriteti: not and or � Primer : � p or q and r p or (q and r) Operacija poređenja primenjena na celobrojne i realne operande daje vrednost logičkog tipa (true ili false) � Operacije poređenja su: � =, < >, <, >, <=, >= � Primer: › p <= q and r p <= (q and r)

Funkcije koje se koriste kod logičkog tipa � ord -određuje redni broj › ord(false)

Funkcije koje se koriste kod logičkog tipa � ord -određuje redni broj › ord(false) = 0 › ord(true) = 1 � succ – sledeća vrednost › succ(false) = true › succ(true) = nema vrednost � pred – predhodna vrednost › pred(true) = false › pred(false) = nema vrdnost � odd – daje vrednost logičkog tipa › odd(5) = true › odd(2) = false

Zadatak 3 � Odrediti logičku vrednost izraza › false > true › ord(true) ›

Zadatak 3 � Odrediti logičku vrednost izraza › false > true › ord(true) › Odd(round(10 * p)) za p=0. 599

Znakovni tip podataka - CHAR � Vrednosti mogu biti svi znaci iz ASCII tabele

Znakovni tip podataka - CHAR � Vrednosti mogu biti svi znaci iz ASCII tabele (svi elementi azbuke programskog jezika) � Vrednost znakovnog tipa se piše stavljanjem znakova uzmeđu apostrofa ’z’ � Praznina je prazan znak

Funkcije � pred(c) - daje predhodni znak › pred(’h’) =’g’ pred(’/’) = ’. ’

Funkcije � pred(c) - daje predhodni znak › pred(’h’) =’g’ pred(’/’) = ’. ’ pred(’ 4’) = ’ 3’ � succ(c) - daje sledeći znak › succ(’H’) =’I’ succ(’ 4’) = ’ 5’ succ(’A’) = ’B’ � Up. Case(c)- malo slovo pretvara u veliko › Up. Case(’d’) =’D’ � ord(c) – redni broj znaka › ord(’A’) =65 ord(’B’) = 66 ord(’*’) = 42 › ord(’a’) =97 ord(’b’) = 98 ord(’ 1’) = 49 � chr(i) – znak čiji je redno broj i › chr(100) =’d’ chr (70) = ’F’ succ(45) = ’-’

Zadatak 4 � Da li su tačni sledeći iskazi › pred(’C’) = chr(ord(’C’) –

Zadatak 4 � Da li su tačni sledeći iskazi › pred(’C’) = chr(ord(’C’) – 1) › succ(’C’) = chr(ord(’C’) +1)

Domaći � Izračunati vrednost sledećih izraza: › › › › � 6 div 2

Domaći � Izračunati vrednost sledećih izraza: › › › › � 6 div 2 – 6 mod 5 = 7 mod 2 + 13 div 3 – 2 = 4 + sqr(5) -17 + trunc(-14. 7 – 3. 2) = 25 > 31 = (3 >2) (5 > 6)= (2 >1) (5 < 4)= Not(30 > 10) = Napisati algoritam koji pomaže kasirki da obračuna kusur, tako što od nje traži da unese jediničnu cenu artikla, količinu artikala i koliko novca dobija od kupca.