08. Типови података

Свака променљива мора имати свој тип података који одређује скуп вредности (домен) које променљива може узимати. Сви типови података у Пасцалу се могу поделити на просте типове и сложене типове.
У просте типове података спадају следећи типови података:
  • ЦЕЛОБРОЈНИ ТИП
  • РЕАЛНИ ТИП
  • ЗНАКОВНИ ТИП
  • ЛОГИЧКИ (BOOLEAN) ТИП
  • ПОБРОЈАНИ И
  • ИНТЕРВАЛНИ ТИП.
Прва четири наведена типа су основни типови,а преостала два су изведени типови података.

Целобројни тип - INTEGER

Целобројни тип података (integer) се користи за приказ целих бројева.
Домен вредности за податке овог типа у већини верзија Пасцала је ограничен на опсег вриједности од -32768 до 32767, међутим овај опсег често није довољан па многе верзије Пасцала уводе и тип longint, који је допушта знатно шири опсег вредности – од -2147483648 до 2147483647.
Поред ова два целобројна типа постоји још неколико типова за рад са цијелим бројевима: byte, shortint, word.
Примјер декларисања целобројне променљиве:
var broj: integer;
var a: longint;
Уколико је потребно декларисати више варијабли истог типа тада називе променљивих одвајамо зарезом. На примјер:
var prvi, drugi, treci, cetvrti, peti: integer;
На подацима типа integer дефинисане су следеће операције:
  • (+) сабирање два цела броја - резултат је цели број
  • (-) одузимање два цела броја - резултат је цели број
  • (*) множење два цела броја - резултат је цели број
  • (DIV) целобројно дељење без остатка - резултат је цели број
  • (MOD) остатак дељења два цела броја - резултат је цели број

Реални тип - REAL

Реални тип представља коначни подскуп скупа рационалних бројева. Овај тип омогућава записивање децималних бројева нпр. -3.56, 3567.987, -0.099999 ...
Врло велике и мале вриједности реалних бројева записују се у сљедећем облику:
mantisa*10eksponent
Овакав начин записивања бројева познат је као начин писања са покретним зарезом, где експонент показује за колико места треба помакнути децималну тачку улево или удесно зависно од тога да ли је експонент позитиван или негативан. На рачунару број у покретном зарезу се записује у облику:

var a: real; ili var a,b,c: real;
Пример декларисања две целобројне и две реалне варијабле:

mantisa E predznak eksponent

на пример 2.5E4 - вредност 2.5 x 104=2.5 x 10000=25000
1.0E-4 - вредност 1.0 x 10-4=0.0001
Пример декларације реалне променљиве: Над овим типом су дефинирани сљедећи оператори:
  • (+) за сабирање реалних бројева
  • (-) за одузимање реалних бројева
  • (*) за множење реалних бројева
  • (/) за дељење реалних бројева
Као и у случају целобројних података Пасцал и за реалне вредности пружа више подтипова података који се разликују по опсегу вредности (прецизности): real, single, double, extended.
Битно је напоменути да реални тип “троши” знатно више меморије од целобројног (од 2 до пет пута), стога уколико знамо да неки податак може узимати само целобројне вриједности тако га треба и декларисати како би се програм ефикасније извршавао.
var a,b: integer;
    c,d: real;

Знаковни тип - CHAR

Ову групу података чине знакови: слова абецеде, нумерички знакови од 0 до 9, знакови интерпункција и специјални знакови.
Знаковна константа састоји се од знака ограниченог једноструким наводницима (литералима), на примјер: 'B' ‘b' 'Z' ' # ' '@' '10'
Пример декларације знаковне променљиве:
var znak: char;
Овако декларисана варијабла у једном тренутку може садржати само један знак, што значи да у овако декларисану променљиву није могуће сместити нпр. ријеч “класа”. Да би се превазишло ово ограничење многе верзије уводе и тип string који омогућава унос податка дужине до 255 знакова. Дакле, ако декларишемо променљиву ime на следећи начин:

var ime: string;

моћи ћемо јој доделити нпр. вредност “Pero Perić”.
Тип података string НИЈЕ прости тип података, мада је сродан знаковном.

Логички тип - BOOLEAN

У програмима је потребно испитивати тачност одређених услова и на основу тога доносити одређене одлуке. Резултат провере упита је тачно (true) или нетачно (false) и те две вредности су домен вредности логичког типа.
Рачунар ове вредности интерпретира на следећи начин: true- 1, false - 0, тако да се у литератури могу наћи и термини логичка 0 и логичка 1.
Примјер декларације логичке варијабле:
var ozenjen: boolean;
чиме је декларирана промјенљива ozenjen која може имати само двије вриједности – true ili false.
Над овим типом су дефинисани следећи оператори:
  • NOT - негација,
  • AND - коњункција и
  • OR - дисјункција.
Оператор NOT је унарни оператор (оператор над само једном вриједности), а AND и OR су бинарни оператори (извршавају се над два операнда).
Comments