Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЭМЛ. теория алгоритмов.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
307.71 Кб
Скачать

Стандартные функции языка Pascal

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

<Имя_функции>(<аргумент:тип_аргумента>):<тип_возвращаемого_значения>

Abs (X :Real): Real - возвращает абсолютное значение аргумента (|X|);

Abs (X :Integer): Integer - возвращает абсолютное значение аргумента (|X|);

ArcTan (X:Real): Real - возвращает арктангенс аргумента (arctg X).

Chr (A :Byte): Char - возвращает символ, код которого равен A.

Cos (X :Real): Real - возвращает косинус аргумента (cos X);

Exp (X :Real): Real- возвращает экспоненту аргумента (ex);

Frac (X :Real): Real - возвращает дробную часть аргумента;

Int(X:Real):Real - возвращает целую часть аргумента;

Ln (X :Real): Real - возвращает натуральный логарифм аргумента (ln X);

Odd (A:Integer):Boolean - возвращает True, если А нечетно.

Ord (A :Char): Byte - возвращает порядковый номер символа A;

Round (X:Real): Integer - возвращает результат округления аргумента до ближайшего целого;

Random (A:Integer): Integer - возвращает случайное число из интервала [0,A];

Sqr (X:Real): Real - возвращает квадрат аргумента (X2);

Sqr (X:Integer): Integer - возвращает квадрат аргумента (X2);

Sqrt (X:Real): Real - возвращает квадратный корень аргумента(sqrt(x);

Sin (X:Real): Real - возвращает синус аргумента;

Trunc (X:Real): Integer - отбрасывает дробную часть действительного аргумента;

UpCase (A :Char):Char - превращает строчные буквы латинского алфавита в соответствующие им прописные.

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

arcsin x = arctg ;

arccos x = ;

arcctg x = ;

logb a = ;

ax = e x*ln a (a>0)

Ввод - вывод данных

Для ввода и вывода данных используются следующие процедуры ввода-вывода: Write(<параметры>), WriteLn(<параметры>),

Read(<параметры>), ReadLn(<параметры>).

Процедура Write(<параметры>) - используется для записи значений параметров на стандартное устройство вывода информации - экран монитора. При использовании в качестве параметров переменных, на экран выводятся их значения. Если их более одного, то они перечисляются через запятую. В процедуре Write(<параметры>) могут записываться значения, заданные своими изображениями, а также - арифметические и логические выражения. Например:

Write (A,B,4); Вывод значений A, B и значения 4

Write (A+B); Вывод результата сложения значений двух переменных A и B

Write ('Строка'); Вывод строкового изображения "Строка" на экран

Write ('Строка', B); Вывод строкового изображения "Строка" на экран и значения переменной B.

При выводе значений переменных может использоваться форматный вывод c фиксированной точкой. Например:

Write (A:7:2); A:N:M - указывается формат значения переменной. Это значит, что всего N символов, отводится под значение переменной A, причем после десятичной точки будет выведено на экран M символов.

WriteLn(<параметры>) отличается от Write(<параметры>) тем, что после вывода значений параметров курсор переводится в начало следующей строки.

Для ввода информации со стандартного устройства ввода информации - клавиатуры, используется процедура Read(<параметры>). В качестве параметров используются идентификаторы переменных, которым присваиваются вводимые значения. Если их несколько, то они перечисляются через запятую.

При выполнении программы процедура Read(<параметры>) переводит программу в режим ожидания вводимых данных. Значения должны вводится в порядке указания их в процедуре, при этом типы вводимых значений должны соответствовать типам соответствующих переменных. Отделяются значения друг от друга символом пробел или нажатием клавиши Enter.

ReadLn(<параметры>) отличается тем, что он после своего выполнения переводит курсор в начало следующей строки.

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

PROGRAM Example_3_1;

var a, b, x : Byte;

BEGIN

Write ('Введите значения переменных a и b типа Byte');

Read (a,b);

x:=a+b; {Сложение}

WriteLn ('a + b =', x);

x:=a-b; {Вычитание}

WriteLn ('a - b =', x);

x:=a*b; {Умножение}

WriteLn ('a * b =', x);

x:=a DIV 2; {Деление нацело}

WriteLn ('a DIV 2 =', x);

x:=a MOD 2; {Выделение остатка от деления нацело}

WriteLn ('a MOD 2 =', x);

x:=a ShL 2; {Сдвиг влево на 2 бита}

WriteLn ('a ShL 2 =', x);

x:=b ShR 1; {Сдвиг влево на один бит}

WriteLn ('b ShR 1 =', x);

END.