Змінні та типи даних

Змінна – іменована область в пам’яті, яка доступна для читання та запису в ходы виконання програми.

В мові Паскаль змінні оголошуються в блоці var. Декілька змінних одного типу можуть бути оголошені одним рядком, при цьому імена змінних розділяються комами.

var
    variableName : variableType;
    x, y, z : integer;

Приклад програми з використанням змінних:

{$CODEPAGE UTF8}
program Variables;
var
  userName : string;
  x, y, z : integer;
begin
  write('Enter your name: ');
  readln(userName);
  writeln('Hello ', userName);

  write('x = ');
  readln(x);
  write('y = ');
  readln(y);
  z := x + y;
  writeln('z = ', x,' + ', y, ' = ', z);

  writeln('Press Enter to Exit...');
  readln;
end.        

Для читання даних з консолі використовується процедура readln.

Основні типи даних Pascal

  • boolean - логічний тип, може приймати значення True(Істина) або False(Хибність);
  • integer - ціле число;
  • real - дійсне число, або число з плаваючою комою;
  • char - символьний тип даних, може містити один символ;
  • string - рядок, послідовність символів.

Цілі типи даних мови програмування Free Pascal

Тип Діапазон значень Розмір в байтах
Byte від 0 до 255 1
ShortInt, Int8 від -128 до 127 1
SmallInt, Int16 від -32768 до 32767 2
Word від 0 до 65535 2
Cardinal від 0 до 4294967295 4
Integer, LongInt, Int32 від -2147483648 до 2147483647 4
LongWord від 0 до 4294967295 4
Int64 від -9223372036854775808 до 9223372036854775807 8
QWord від 0 до 18446744073709551615 8

Дійсні числа

Тип Діапазон Значащих цифр Розмір в байтах
Single від 1.5e-45 до 3.4e38 7-8 4
Real, Double від 5.0e-324 до 1.7e308 15-16 8
Extended від 1.9e-4932 до 1.1e4932 19-20 10
Comp від -2e64+1 до 2e63-1 19-20 8
Currency від -922337203685477.5808 до 922337203685477.5807 - 8

“E” - показує степінь в числах з плаваючою крапкою. Вираз 3.6e5 еквівалентний математичному запису 3.6*105.

Символьні та рядкові типи даних

Тип Діапазон значень Розмір в байтах
Char 1 символ 1
WideChar 1 символ Unicode 2
String, ShortString рядок довжиною до 225 символів залежить від довжини
AnsiString не обмежено по довжині залежить від довжини
WideString не обмежений по довжині Unicode рядок залежить від довжини

Для рядків можна не вказувати довжину, тоді вони приймають значення 255 символів:

var
    s1 : string[12]; // рідок довжиною 12 символів
    s2 : string;     // рядок довжиною 255  

Логічні типи

Тип Розмір в байтах Значення для True Значення для False
Boolean 1 1 0
ByteBool 1 Будь-яке ненульове значення 0
WordBool 2 Будь-яке ненульове значення 0
LongBool 3 Будь-яке ненульове значення 0

Дивіться також: