Целые и вещественные числовые типы данных
Каждая переменная в программе должна быть описана, то есть упомянута в разделе описаний переменных var с указанием своего типа. Основным типом для работы с целочисленными данными является тип integer.
Тип | Диапазон значений | Объем памяти |
ShortInt | -128 ... 127 | 1 байт, со знаком |
Integer | -32 768 ... 32 767 | 2 байта, со знаком |
LongInt | -2147483648 ... 2147483647 | 4 байта, со знаком |
Byte | 0 ... 255 | 1 байт, без знака |
Word | 0 ... 65535 | 2 байта, без знака |
К переменным целочисленных типов применимы следующие арифметические операции:
+ | сложение |
- | вычитание |
* | умножение |
div | целая часть от деления (значение не округляется, а дробная часть просто отбрасывается, в том числе и отрицательных чисел) |
mod | остаток от деления нацело: a mod b=a-((a div b)*b) |
Примечание. Переменной целого типа нельзя присваивать значение результата обычной операции деления "/".
Приведем примеры выполнения двух последних операций для всех возможных знаков аргументов:
5 div 3=1; 5 mod 3=2; |
-5 div 3=-1; -5 mod 3=-2; |
5 div -3=-1; 5 mod -3=2; |
-5 div -3=1; -5 mod -3=-2; |
Основным типом для работы с вещественными (действительными) числами является тип real. Вещественных чисел, точно представляемых в компьютере, конечное число. Остальные числа либо приближаются представимыми, либо оказываются непредставимыми. Последнее относится к слишком большим и к слишком маленьким вещественным числам.
Тип | Диапазон возможных значений | Точность | Формат |
Real | 2.9E-39 ... 1.7E38 | 11-12 знаков | 6 байт |
Single | 1.5E-45 ... 3.4E38 | 7-8 знаков | 4 байта |
Double | 5.0E-324 ... 1.7E308 | 15-16 знаков | 8 байт |
Extended | 3.4E-4932 ... 1.1E4932 | 19-20 знаков | 10 байт |
Comp | -9.2E18 ... 9.2E18 | 19-20 знаков | 8 байт |
К числовым типам данных применимы стандартные функции, представленные в таблице.
Функция | Комментарий | Тип аргумента | Тип результата |
abs(x) | |x| - модуль числа х | integer, real | соответствующий |
sqr(x) | x2 | integer, real | соответствующий |
sqrt(x) | - корень квадратный из х | integer, real | real |
pi | 3.1415926535897932385 | нет | real |
sin(x) | sin x | integer, real | real |
cos(x) | cos x | integer, real | real |
arctan(x) | arctan x | integer, real | real |
exp(x) | ex - экспонента | integer, real | real |
ln(x) | ln x - натуральный логарифм числа х | integer, real | real |
round(x) | округляет х до ближайшего целого | real | integer |
trunc(x) | отбрасывает дробную часть числа х | real | integer |
int(x) | целая часть аргумента | real | real |
frac(x) | дробная часть аргумента | real | real |
В программировании существует негласное правило, что имена целочисленных переменных начинаются с букв i, j, k, l, m, n, а вещественнных - с остальных букв. Это правило не применяется, если переменная имеет мнемоническое имя, то есть ее название отражает смысл хранимой величины.