Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции 1.doc
Скачиваний:
34
Добавлен:
22.02.2015
Размер:
1.94 Mб
Скачать
        1. Стандартные математические и арифметические функции

Функция

Описание

Sin(X)

Синус угла (углы задаются в радианах)

Cos(X)

Косинус угла

Tan(X)

Тангенс угла

ArcSin(X)

Арксинус – функция, обратная Sin(X). Возвращает угол (в радианах), синус которого равенX

ArcCos(X)

Арккосинус угла

ArcTan(X)

Арктангенс угла

Abs(X)

Модуль X

Sqr(X)

Возведение X в квадрат

Sqrt(X)

Извлечение квадратного корня из X

Exp(X)

Вычисление ex

Ln(X)

Вычисление натурального логарифма X

Pi

Возвращает число π

Round(X)

Округление X до ближайшего целого:

Round(1.4) = 1, Round(1.6) = 2

Trunc(X)

Отсечение дробной части числа X:

Trunc(1.4) = 1, Trunc(1.6) = 1

Frac(X)

возвращает дробную часть числа:

Frac(15.41) = 0.41

      1. Структурированные операторы

        1. Оператор выбораCase

 Синтаксис

CASE<Выражение>OF

<Список значений 1>:<Оператор 1>;

<Список значений 2>:<Оператор 2>;

∙ ∙ ∙

<Список значений N-1>:<Оператор N-1>;

<Список значений N>:<Оператор N>

[ELSE

<Список операторов>]

END

Выражение может быть только порядкового типа. В списках значений через запятую указываются константы или интервалы значений. Если значение выражения находится в одном из списков значений, выполняется соответствующий оператор. Одно и то же значение не может находиться в нескольких списках (если рассматривать Delphi, так как в других версиях языка Паскаль это иногда допускается, при этом выполняется только первый из операторов, для которого значение – в списке). Если значение выражения не содержится ни в одном из списков и присутствует разделELSE, то выполняется список операторов. После последнего оператора передELSE и передEND точку с запятой ставить не обязательно, но допускается.

 Пример

CASE S[n] OF

'0'..'9':WriteLn('Цифра');

'A'..'Z','a'..'z':WriteLn('Буква');

'+','-','*','/':WriteLn('Операция');

ELSE

WriteLn('Неизвестный символ');

END;

        1. Оператор циклаFor

 Синтаксис

FOR<Имя переменной> := <Выражение 1> {TO|DOWNTO} <Выражение 2>DO<Оператор>

 Алгоритм действия оператора FOR для фразTO/DOWNTO

1. Вычислить начальное и конечное значения переменной цикла (выражения 1 и 2).

2. Присвоить переменной цикла начальное значение.

3. Если значение переменной не больше/меньше конечного значения, то

А. Выполнить оператор.

Б. Изменить значение переменной цикла на следующее/предыдущее.

В. Перейти к шагу 3.

4. Конец оператора.

Действия, выполняемые на шаге 3.Б (изменение значения переменной цикла на следующее или предыдущее), требуют, чтобы <Выражение 1>, <Выражение 2> и переменная цикла имели одинаковый порядковый тип, так как такие действия определены только для порядковых типов. Если использована фраза TO и начальное значение больше конечного, либо фразаDOWNTO и начальное значение меньше конечного, то оператор не будет выполнен ни разу. После выполнения цикла значение переменной цикла изменяется и не должно использоваться.

 Пример

FOR n:=1 TO 10 DO

WriteLn('n=',n);

 Результат выполнения

n=1

n=2

. . .

n=10