Типы данных
Тип определяет какие данные могут хранить переменные, константы или какой результат даст выражение – целый, вещественный, логический и т.д.
Названия типов используются при описаниях переменных и констант, а также в подпрограммах.
Целые типы - позволяют хранить целые числа.
Название |
Диапазон |
Количество байт |
Integer |
|
4 со знаком |
Int64 |
-2*1063…+2*1063 |
8 со знаком |
Byte |
0…255 |
1 без знака |
Word |
0…65535 |
2 без знака |
ShortInt |
-128…127 |
1 со знаком |
SmallInt |
-32768…32767 |
2 со знаком |
LongInt |
º Integer |
|
Вещественные типы – хранят вещественные данные.
Название |
Диапазон |
Точность |
Количество байт |
Real |
±5.0*10-324…1.7*10308 |
15-16 |
8 |
Single |
±1.5*10-45…3.4*1038 |
7-8 |
4 |
Extended |
±3.6*10-4951…1.1*104932 |
19-20 |
10 |
Comp |
±2.0*10-63…2.0*1063 |
19-20 |
8 |
Double |
ºReal |
|
|
Логический тип (Boolean) хранит true и false. Символьный – одиночные символы, константы этого типа записываются в кавычках.
По своей сути строка является массивом символов, к ней можно обращаться как к массиву.
Кроме того существуют пользовательские типы, создаваемые программистами:
- массивы
- интервальные типы (являются подмножественными целочисленными(х)? символьных)
- перечисляемый тип – представляют собой типы, содержащие ограниченное количество фиксированных значений.
Совместимость типов.
Под совместимостью понимается возможность присваивать переменным одного типа значения другого.
Если описаны переменные следующего типа:
var I1, I2: Integer;
R1, R2: Real;
C1, C2: Char;
S1, S2: String.
Допускаются следующие присвоения:
I1:=I2; C1:=C2; S1:=S2;
R1:=R2; C1:=S1[i]; S1[i]:=C1;
R1:=I1.
При необходимости присвоить целой переменной вещественное значения используется функция округления: Round, Trunc.
Round(5,5)=>6
Round(5,4)=>5
Trunc(5,9)=>5 – отбрасывает целую часть
При выполнении операции с операндами разных типов, но одинакового характера, результат имеет более широкий тип.
W: Word; I*W -> I
I: Integer;
S: Single; S*e -> e
E: extended
Существует несколько правил:
результат деления двух чисел всегда вещественный
результат операций Div и Mod всегда целый
если в выражении участвуют целые и вещественные переменные, результат будет вещественным.
Ввод данных.
Ввод данных осуществляется при помощи подпрограмм:
Read
Readln
Имеют такой формат:
Read([имя файла],[список переменных]);
В квадратных скобках указываются элементы, которые могут бать опущены.
Если имя файла не указано происходит чтение с клавиатуры(экрана), если указано – из файла. Список переменных содержит переменные любых типов, идущие через запятую(,).
Пример:
Var a:real; b:integer;
Begin read(a,b);
Readln отличается от Read тем, что дополнительно переводит курсор экрана на следующую строку.
Вывод данных.
Вывод данных осуществляется при помощи подпрограмм.
Write
Writeln
Имеет такой формат:
Write ([имя файла],[список переменных, констант, выражений],)
Пример:
A=3,b=5
Write (a,’__’, b);
Write (a+b);Þ8
Write
(‘Сумма
=’,
a+3);
Þ
Сумма
=6
Writeln отличается от Write тем, что дополнительно переводит курсор экрана на следующую строку.
Для вывода чисел в форме, желательной для программиста используются форматы вывода:
- для целых чисел – переменная : количество позиций
Write (В:9);
- для вещественных чисел:
1) переменная : общее количество позиций
Write (А:8:3);
2) переменная : количество позиций
Write (А:9);
