KnigaRead.com/
KnigaRead.com » Компьютеры и Интернет » Программирование » А. Цветкова - Информатика и информационные технологии: конспект лекций

А. Цветкова - Информатика и информационные технологии: конспект лекций

На нашем сайте KnigaRead.com Вы можете абсолютно бесплатно читать книгу онлайн "А. Цветкова - Информатика и информационные технологии: конспект лекций". Жанр: Программирование издательство -, год -.
Перейти на страницу:

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

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

1) любой тип данных определяет множество значений, к которому принадлежит константа, которые может принимать переменная или выражение либо вырабатывать операция или функция;

2) тип значения, задаваемого константой, переменной или выражением, можно определить по их виду или описанию;

3) каждая операция или функция требуют аргументов фиксированного типа и выдают результат фиксированного типа.

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

Тип определяет:

1) возможные значения переменных, констант, функций, выражений, принадлежащих к данному типу;

2) внутреннюю форму представления данных в ЭВМ;

3) операции и функции, которые могут выполняться над величинами, принадлежащими к данному типу.

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

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

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

Действительные типы определяет те данные, которые реализуются подмножеством действительных чисел, допустимых в данной ЭВМ.

Типы, определяемые пользователем, – перечисляемый и интервальный. Структурированные типы имеют четыре разновидности: массивы, множества, записи и файлы.

Кроме перечисленных, Pascal включает еще два типа – процедурный и объектный.

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

1) вычисления в круглых скобках;

2) вычисления значений функций;

3) унарные операции;

4) операции *, /, div, mod, and;

5) операции +, —, or, xor;

6) операции отношения =, <>, <, >, <=, >=.

Выражения входят в состав многих операторов языка Pascal, – также могут быть аргументами встроенных функций.

2. Стандартные процедуры и функции

Арифметические функции

1. Function Abs(X);

Возвращает абсолютное значение параметра.

X – выражение вещественного или целочисленного типа.


2. Function ArcTan(X: Extended): Extended;

Возвращает арктангенс аргумента.

X – выражение вещественного или целочисленного типа.


3. Function Ехр(Х: Real): Real;

Возвращает экспоненту.

X – выражение вещественного или целочисленного типа.


4. Function Frac(X: Real): Real;

Возвращает дробную часть аргумента.

X – выражение вещественного типа. Результат – дробная часть X, т. е.

Frac (X) = X–Int (X).


5. Function Int(X: Real): Real;

Возвращает целочисленную часть аргумента.

X – выражение вещественного типа. Результат – целочисленная часть X, т. е. X, округленный к нулю.


6. Function Ln(X: Real): Real;

Возвращает натуральный логарифм (Ln е = 1) выражения X вещественного типа.


7. Function Pi: Extended;

Возвращает значение Pi, которое определено как 3.1415926535.


8. Function Sin(X: Extended): Extended;

Возвращает синус аргумента.

X – выражение вещественного типа. Sin возвращает синус угла X в радианах.


9. Function Sqr(X: Extended): Extended;

Возвращает квадрат аргумента.

X – выражение с плавающей запятой. Результат того же самого типа, что и X.


10. Function Sqrt(X: Extended): Extended;

Возвращает квадратный корень аргумента.

X – выражение с плавающей запятой. Результат – квадратный корень X.

Процедуры и функции преобразования величин

1. Procedure Str(X [: Width [: Decimals]]; var S);

Преобразовывает число X в строковое представление согласно

Width и параметрам форматирования Decimals. X – выражение вещественного или целого типа. Width и Decimals – выражения целого типа. S – переменная типа String или символьный массив с нулевым окончанием, если допускается расширенный синтаксис.


2. Function Chr(X: Byte): Char;

Возвращает символ с порядковым номером X в ASCII-таблице.


3. Function High(X);

Возвращает наибольшее значение в диапазоне параметра.


4. Function Low(X);

Возвращает наименьшее значение в диапазоне параметра.


5. Function Ord(X): Longint;

Возвращает порядковое значение выражения перечислимого типа. X – выражение перечислимого типа.


6. Function Round(X: Extended): Longint;

Округляет значение вещественного типа до целого. X – выражение вещественного типа. Round возвращает значение Longint, которое является значением X, округленным до ближайшего целого числа. Если X находится точно посередине между двумя целыми числами, возвращается число с наибольшей абсолютной величиной. Если округленное значение X выходит за диапазон Longint, генерируется ошибка времени выполнения программы, которую вы можете обработать с использованием исключительной ситуации EInvalidOp.


7. Function Trunc(X: Extended): Longint;

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


8. Procedure Val(S; var V; var Code: Integer);

Преобразовывает число из строкового значения S в числовое

представление V. S – выражение строкового типа – последовательность символов, которая формирует целое или вещественное число. Если выражение S недопустимо, индекс неверного символа сохраняется в переменной Code. В противном случае Code устанавливается в нуль.

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

1. Procedure Dec(varX [; N: Longlnt]);

Вычитает единицу или N из переменной X. Dec(X) соответствует X:= X – 1, и Dec(X, N) соответствует X:= X – N. X – переменная перечислимого типа или типа PChar, если допускается расширенный синтаксис, и N – выражение целочисленного типа. Процедура Dec генерирует оптимальный код и особенно полезна в длительных циклах.


2. Procedure Inc(varX [; N: Longlnt]);

Прибавляет единицу или N к переменной X. X – переменная перечислимого типа или типа PChar, если допускается расширенный синтаксис, и N – выражение целочисленного типа. Inc (X) соответствует инструкции X:= X + 1, и Inc (X, N) соответствует инструкции X:= X + N. Процедура Inc генерирует оптимальный код и особенно полезна в длительных циклах.


3. Function Odd(X: Longlnt): Boolean;

Возвращает True, если X – нечетное число, и False – в противном случае.


4. Function Pred(X);

Возвращает предыдущее значение параметра. X – выражение перечислимого типа. Результат того же самого типа.


5. Function Succ(X);

Возвращает следующее значение параметра. X – выражение перечислимого типа. Результат того же самого типа.

3. Операторы языка Pascal

Условный оператор

Формат полного условного оператора определяется следующим образом: If В then SI else S2; где В – условие разветвления (принятия решения), логическое выражение или отношение; SI, S2 – один выполняемый оператор, простой или составной.

При выполнении условного оператора сначала вычисляется выражение В, затем анализируется его результат: если В – истинно, то выполняется оператор S1 – ветвь then, а оператор S2 пропускается; если В – ложно, то выполняется оператор S2 – ветвь else, а оператор S1 – пропускается.

Также существует сокращенная форма условного оператора. Она записывается в виде: If В then S.

Оператор выбора

Структура оператора имеет следующий вид:

case S of

c1: insruction1;

c2: insruction2;

cn: insructionN;

else instruction

end;

где S – выражение порядкового типа, значение которого вычисляется;

с1, с2…., сп – константы порядкового типа, с которыми сравниваются выражения

S; instruction1,…, instructionN – операторы, из которых выполняется тот, с константой которого совпадает значение выражения S;

Перейти на страницу:
Прокомментировать
Подтвердите что вы не робот:*