Целочисленные арифметические операции
Целочисленная арифметика языка Паскаль основана на использовании пяти стандартных целых типов: Byte, Word, ShortInt, Integer, LongInt.
Cо всеми целыми типами связан набор из пяти основных арифметических операций: +, -, *, div, mod.
А mod B = 0 |
- условие делимости целого A на целое B. |
A mod 2 = 0 |
- условие чётности целого A. |
A mod 10 |
- значение последней цифры в десятичной записи целого А (например, 1234 mod 10 = 4). |
A div 10 |
число, десятичная запись которого получится отбрасыванием последней цифры в десятичной записи целого числа А (например, 1234 div 10 =123). |
A mod p |
- значение последней цифры в p-ичной записи целого А (например, при p=2, A mod 2 - последняя цифра записи А в двоичной системе счисления); |
A div p |
- число, p-ичная запись которого получится отбрасыванием последней цифры в p-ичной записи целого числа А (например, 510=1012; 510 div 2 =210=102; т.е. из 1012 получили 102); |
УСЛОВНЫЙ ОПЕРАТОР IF…THEN…ELSE
Условный оператор if служит для организации процесса вычислений в зависимости от какого-либо логического условия. Оператор имеет вид:
if <условие> then <опер_1> else <опер_2>;
Если условие истинно, то выполняется оператор (простой или составной), следующий за словом then. Но если условие ложно, то будет выполняться оператор, следующий за словом else.
Если в задаче требуется, чтобы в зависимости от значения условия выполнялся не один оператор, а несколько, то ставятся операторные скобки begin …end
if <условие> then
begin
<оператор_1>; <оператор_2>;
end
else
begin
<оператор_3>; <оператор_4>;
end;
Альтернативная ветвь else может отсутствовать, если в ней нет необходимости. В таком «усеченном» операторе в случае невыполнения условия ничего не происходит, и управление передается следующему оператору
if <условие> then <оператор_1>
ЛОГИЧЕСКИЕ ОПЕРАЦИИ
Над логическими аргументами в Турбо Паскаль определены следующие операции:
NOT - логическое отрицание ("НЕ")
AND - логическое умножение ("И")
OR - логическое сложение ("ИЛИ")
XOR - логическое "Исключающее ИЛИ"
Результаты выполнения этих операций над переменными А и В логического типа приведены в таблице истинности.
A |
B |
not A |
A and B |
A or B |
A xor B |
true |
true |
false |
true |
true |
false |
true |
false |
|
false |
true |
true |
false |
true |
true |
false |
true |
true |
false |
false |
|
false |
false |
false |
ОПЕРАЦИИ ОТНОШЕНИЯ
К операциям отношения в Турбо Паскаль относятся такие операции, как:
> - больше
< - меньше
= - равно
<> - не равно
>= - больше или равно
<= - меньше или равно
В операциях отношения могут принимать участие не только числа, но и символы, строки, множества и указатели.
ОПЕРАТОР ВЫБОРА CASE
Оператор варианта case необходим в тех случаях, когда в зависимости от значений какой-либо переменной надо выполнить те или иные операторы.
case <управляющая_переменная> of <набор_значений_1>: оператор_1; <набор_значений_2>: оператор_2; <набор_значений_N>: оператор_N else <альтернативный_оператор> end;
Оператор работает следующим образом
Если управляющая_переменная принимает значение из набора_значений_1, то выполняется оператор_1.
Если управляющая_переменная принимает значение из набора_значе-ний_2, то выполняется оператор_2.
Еслиуправляющая_переменная принимает значение из набора_значений_N, то выполняется onepaтop_N.
Если управляющая переменная не принимает ни одно значение из имеющихся наборов, то выполняется альтернативный_оператор. Тип управляющей_переменной, которая стоит между служебными словами case и of, должен быть только перечислимым (включая char и boolean) диапазоном или целочисленным.
Набор_значений - это конкретное значение управляющей переменной или выражение, при котором необходимо выполнить соответствующий оператор, игнорируя остальные варианты.
Ключевое слово else может отсутствовать.
ОПЕРАТОРЫ ЦИКЛА
Цикл – это повторение одних и тех же действий.
Последовательность действий, которые повторяются в цикле, называются телом цикла.
Один проход цикла называют шагом или итерацией.
Итерация – это организация обработки данных, при которой действия повторяются многократно, не приводя при этом к вызовам самих себя.
Переменные, которые изменяются внутри цикла и влияют на его окончание, называются параметрами цикла.
При написании циклов необходимо помнить:
цикл когда-нибудь закончится, содержимое его тела должно влиять на условие цикла;
условие должно состоять из корректных выражений и значений, определенных еще до первого выполнения тела цикла.
ОПЕРАТОРЫ ЗАВЕРШЕНИЯ ЦИКЛА
Для всех операторов цикла выход из цикла осуществляется как вследствие естественного окончания оператора цикла, так и с помощью операторов перехода и выхода.
Ходом выполнения цикла можно управлять с помощью двух операторов break и continue.
break – прерывает выполнение цикла, управление передается операторам, следующим за оператором цикла.
continue – прерывает выполнение очередного шага цикла и возвращает управление в начало цикла, начиная следующий шаг.
for n:=1 to 10 do begin if n mod 2 = 0 then continue; if n = 7 then break; writeln(n); end; |
Данная программа будет печатать только нечетные числа (из-за срабатывания continue). Цикл прекратит выполняться, когда n станет равно 7. В итоге будут напечатаны числа: 1, 3, 5.
