Стандартные типы данных

К стандартным относятся целые, действительные, логические, символьный и адресный типы.

ЦЕЛЫЕ типы определяют константы, переменные и функции, значения которых реализуются множеством целых чисел, допустимых в данной ЭВМ.

тип диапазон значений требуемая память
Shortint -128.. 127 1 байт
Integer -32768.. 32767 2 байта
Longint -2147483648.. 2147483647 4 байта
Byte 0.. 255 1 байт
Word 0.. 65535 2 байта

Над целыми операндами можно выполнять следующие арифметические операции: сложение, вычитание, умножение, целочисленное деление, получение остатка от деления. Знаки этих операций:

+ -     * div mod

Результат арифметической операции над целыми операндами есть величина целого типа. Результат выполнения операции деления (div) целых величин есть целая часть частного. Результат выполнения операции получения остатка от деления (mod) - остаток от деления целых. Например:

17 div 2 = 8, 3 div 5 = 0.17 mod 2 = 1, 3 mod 5 = 3.

Операции отношения, примененные к целым операндам, дают результат логического типа TRUE или FALSE (истина или ложь).

В языке ПАСКАЛЬ имеются следующие операции отношения: равенство =, неравенство <>, больше или равно >=, меньше или равно <=, больше >, меньше <. 

Например – выражение - проверка на четность:

If (a mod 2) = 0 then b:=c*a

Else N:=c+a;

Если а делится на 2 без остатка, то выполняется оператор b:=c*a.

Если а делится на 2 с остатком, то правая часть выражения (b:=c*a) не выполняется, а выполняется оператор, следующее за данным

выражением - N:=c+a;

К аргументам целого типа применимы следующие стандартные (встроенные) функции, результат выполнения которых имеет целый тип:

Abs(X), Sqr(X), Succ(X), Pred(X),

и которые определяют соответственно абсолютное значение |Х|, Х в квад- рате, Х+1, Х-1.

Следующая группа стандартных функций для аргумента целого типа дает действительный результат:

Sin(X), Cos(X), ArcTan(X), Ln(X), Exp(X), Sqrt(X).

Эти функции вычисляют синус, косинус и арктангенс угла, заданного в радианах, логарифм натуральный, экспоненту и корень квадратный со- ответственно.

Результат выполнения функции проверки целой величины на нечетность Odd(X) имеет значение истина, если аргумент нечетный, и значение ложь, если аргумент четный:

X=5 Odd(X)=TRUE, X=4 Odd(X)=FALSE.

Для быстрой работы с целыми числами определены процедуры:

Inc(X) X:=X+1Inc(X,N) X:=X+NDec(X) X:=X-1Dec(X,N) X:=X-N

ДЕЙСТВИТЕЛЬНЫЕ типы определяет те данные, которые реализуются подмножеством действительных чисел, допустимых в данной ЭВМ.

Тип Диапазон значений Количество цифр мантиссы Требуемая память (байт)
Real 2.9e-39.. 1.7e+38 11 6
Single 1.5e-45.. 3.4e+38 7 4
Double 5.0e-324.. 1.7e+308 15 8
Extended 3.4e-4932.. 1.1e+4932 19 10

Над действительными операндами можно выполнять следующие

арифметические операции, дающие действительный результат:

 

Сложение +, вычитание -, умножение *, деление /.

К величинам действительного типа применимы все операции отношения, дающие булевский результат.

Один из операндов, участвующих в этих операциях, может быть целым.

К действительным аргументам применимы функции, дающие действительный результат:

 

Abs(X), Sqr(X), Sin(X), Cos(X), ArcTan(X),Ln(X), Exp(X), Sqrt(X), Frac(X), Int(X), Pi.

Функция Frac(X) возвращает дробную часть X, функция Int(X) - целую часть X с отбрасыванием дробной части.

Безаргументная функция Pi возвращает значение числа Пи действительного типа.

К аргументам действительного типа применимы также функции

 

Trunc(X) и Round(X),

дающие целый результат. Первая из них выделяет целую часть действительного аргумента путем отсечения дробной части, вторая округляет аргумент до ближайшего целого.

ЛОГИЧЕСКИЙ тип (Boolean) определяет те данные, которые могут принимать логические значения TRUE и FALSE.

К булевским операндам применимы следующие логические операции:

not and or xor.

Логический тип определен таким образом, что FALSE < TRUE. Это позволяет применять к булевским операндам все операции отношения.

СИМВОЛЬНЫЙ тип (Char) определяет упорядоченную совокупность символов, допустимых в данной ЭВМ. Значение символьной переменной или константы - это один символ из допустимого набора.

Символьная константа может записываться в тексте программы следующими способами:

1. как один символ, заключенный в апострофы, например:

'A' 'a' 'Ю' 'ю'

2. с помощью конструкции вида #K, где K - код соответствующего символа, при этом значение K должно находиться в пределах 0..255;

К величинам символьного типа применимы все операции отношения.

Для величин символьного типа определены две функции преобразования

Ord(C) Chr(K).

Первая функция определяет порядковый номер символа С в наборе символов, вторая определяет по порядковому номеру К символ, стоящий на К-том месте в наборе символов. Порядковый номер имеет целый тип.

К аргументам символьного типа применяются функции, которые определяют предыдущий и последующий символы:

Pred(C) Succ(C) Pred('F') = 'E' Succ('Y') = 'Z'

При отсутствии предыдущего или последующего символов значение соответствующих функций не определено.

Для литер из интервала 'a'...'z' применима функция UpCase(C), которая

переводит эти литеры в верхний регистр 'A'..'Z'.

АДРЕСНЫЙ тип (Pointer) определяет переменные, которые могут содержать значения адресов данных или фрагментов программы. Для хранения адреса требуются два слова (4 байта), одно из них определяет сегмент, второе - смещение.

Для получения значения адреса какой-либо переменной введена унарная операция @.

ИНИЦИАЛИЗАЦИЯ ПЕРЕМЕННЫХ

 

Тип переменных определяется пользователем в разделе описания переменных - var.

Например

Var

  a,b,c: Real;

Объявлены три переменных вещественного типа – a, b, c.

 

В оттранслированной (собранной для выполнения) программе, для всех переменных отведено место в памяти, и всем переменным изначально присвaиваются нулевые значения.

 

КОНСТАНТЫ

определяется пользователем в разделе описания переменных - var.

Тип констант в языке ПАСКАЛЬ определяется по их виду:

1. константы целого типа - это целые числа, не содержащие десятичной точки. Перед описанием константы пишется служебное слово - const  :

Const

   Y: Real = 4;

2. константы действительного типа - действительные числа c плавающей точкой:

Const

      A: Real = 4.0;

3. логические константы - логические значения TRUE и FALSE:

Const

      Flag: Boolean= true;

4. символьные константы - либо строки длиной в один символ.

 

Любой оператор в программе может быть помечен меткой. В качестве метки используются произвольные целые без знака, содержащие не более четырех цифр, либо имена. Метка ставится перед оператором и отделяется от него двоеточием. Все метки, используемые в программе, должны быть перечислены в разделе описания переменных VAR, например:

Label 3, 471, 29, Quit;

КОММЕНТАРИИ

 

Кроме описаний и операторов ПАСКАЛЬ - программа может содержать комментарии, которые представляют собой произвольную последовательность символов (подсказок или пояснений к программе), расположенных между следующими символами:

// строка, расположенная после двух косых воспринимается транслятором

// как комментарий;

 

{

C:=a+b; операторы, заключенные в фигурные скобки воспринимается

F:=sqrt(c); транслятором как комментарий;

}

(*

C:=a+b; операторы, заключенные в скобки со звездочкой                  воспринимается

F:=sqrt(c); транслятором как комментарий;

*)

Закомментированные строки изменяют свой цвет на голубой.

 

 

ПРОЦЕДУРЫ И ФУНКЦИИ.

 

Алгоритм решения задачи проектируется путем декомпозиции всей задачи в отдельные подзадачи. Обычно подзадачи реализуются в виде подпрограмм.

Подпрограмма - это последовательность операторов, которые определены и записаны только в одном месте программы, однако их можно вызвать для выполнения из одной или нескольких точек программы. Каждая подпрограмма определяется уникальным именем.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: