yandex rtb 1
ГоловнаЗворотній зв'язок
yande share

Основы программирования

3. ПРОСТЫЕ ПРОГРАММЫ

 

Раздел команд простой (линейной) программы складывается из команд присваивания, ввода-вывода данных и вызовов процедур.

  1. Команда присваивания.  Команда  присваивания  выглядит таким образом:

<имя переменной> := <выражение>;

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

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

Пример. Рассмотрим действие команд присваивания в программе triangle из первого параграфа:

р := а + b + с;

р:=р/2;

s := sqrt(p * (р - а) * (р - b) * (р - с));

Здесь вычисляется значение периметра, которое присваивается переменной р, полупериметра (присваивается тоже переменной р) и площади (присваивается переменной s).

2. Основные операции, стандартные функции и некоторые процедуры языка Паскаль описаны в таблицах 3 и 4 соответственно.

Табл. 3. Основные операции

 

Приоритет

 

Операция

 

Действие операции

 

1

 

+,  -

not

 

Присваивания знака Логическое отрицание

 

2

 

*, /

div, mod

and

 

Умножение,  деление Целочисленные операции Логическое произведение

 

3

 

+, -

or,  xor

 

Сложение,  вычитание Логические суммы

 

4

 

=,<>,<,>,<=,>=

in

 

Отношения (сравнения) Принадлежность к множеству

 

Операции выполняются с учетом их приоритета (1 - самый высокий). Для изменения естественного порядка выполнения операций используют круглые скобки, например:

2 * -3 - 2 = -8;    2 * (-3 - 2) - -10;    5 * (2 + 13) = 75;

20 + 100 / 20 * 5 = 45;    20 + 100 / (20 * 5) - 21.

 

Результатом операции div является частное от деления двух чисел, a mod - остаток, например:

(9-2) div 2 = 3;    7 mod 2 = 1.

Определения логических операций будут поданы ниже.

Табл. 4. Основные стандартные функции и процедуры

Функция

 

Тип аргумента

 

Тип результата

 

Математическая запись, комментарий

 

abs(x)

 

integer, real

 

integer, real

 

їх

 

arctan(x)

 

integer, real

 

real

 

arctg(x)

 

cos(x)

 

integer, real

 

real

 

cos(x)

 

sin(x)

 

integer, real

 

real

 

sin(x)

 

exp(x)

 

integer, real

 

real

 

e*

 

ln(x)

 

integer, real

 

real

 

ln(*), x>0

 

sqrt(x)

 

integer, real

 

real

 

•Jx , x >0

 

sqr(x)

 

integer, real

 

integer, real

 

X2

 

ord(x)

 

упорядоченный

 

integer

 

ASCII-код символа

 

succ(x)

 

упорядоченный

 

упорядоченный

 

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

X

 

pred(x)

 

упорядоченный

 

упорядоченный

 

возвращает предыдущее значение х

 

round(x)

 

real

 

integer

 

округляет число х до целого

 

trunc(x)

 

real

 

integer

 

отбрасывает дробную часть д:

 

int(x)

 

real

 

real

 

отбрасывает дробную часть х

 

frac(x)

 

real

 

real

 

дробная часть числа х

 

odd(x)

 

integer

 

boolean

 

true (х - нечетное), false (х - четное)

 

random(x)

 

integer

 

integer

 

генерирует случайное число в диапазоне от 0 до

X

 

 

upcase(x)

 

char

 

char

 

заменяет строчную букву латинского алфавита на прописную

 

 

 

 

процедуры:

 

 

inc(x,y)

 

integer

 

integer

 

увеличивает х на у

 

 

dec(x.y)

 

integer

 

integer

 

уменьшает х на у

 

 

dec(x)

 

integer, char

 

integer, char

 

уменьшает х на 1

 

 

Рассмотрим примеры значений функций и выполнения процедур:

round(2.1)=2,

round(6.8)=7,

trunc(2.1)=2,

trunc(6.8)=6,

int(2.1)=2.0,

int(6.8)=6.0,

frac(2.1)=0.1,

frac(6.8)=0.8,

х:=1; inc(x,5); (x=6),

х:=’а’; inc(x); (x=’b’),

х:=7; dec(x,3); (х=4),

x:='d'; dec(x); (x=’c’).

Остальные математические функции можно выразить через основные, например,

tg(x) = sin(x) / соs(x), arccos(x) = arctg

arcsin(x) = arctg, xa = exp(a ln(x)) , x>0,

logb a = ln(a)/ln(b) .

 

5