
- •Содержание
- •Линейные алгоритмы
- •Язык программирования Turbo Passcal
- •Типы переменных в Паскале:
- •Стандартные операции и функции от скалярных данных.
- •Структура программы на Pascal
- •Команда присваивания
- •Команды ввода и вывода
- •Справка по работе с системой Turbo Pascal
- •Условный оператор, оператор множественного выбора Алгоритмы с ветвлением
- •Ветвление в Pascal Логические выражения
- •Логические операции
- •Команды ветвления
- •1. Условный оператор if
- •2. Оператор Case.
- •3. Команда безусловного перехода goto
- •Циклы Алгоритмы с циклами
- •1. Цикл с предусловием
- •2. Цикл с постусловием.
- •Циклы в Pascal
- •1. Цикл с параметром
- •2. Цикл с предусловием.
- •3. Цикл с постусловием
- •Вложенные циклы
- •Подпрограммы
- •Функции пользователя
- •Процедуры
- •Массивы Одномерные массивы
- •Стандартные задачи обработки массивов:
- •Двумерные массивы
- •Обработка строк и символов
- •Процедуры и функции обработки строк.
- •Основные алгоритмы обработки строк
- •Графика в Pascal
- •Основные графические процедуры и функции
- •Работа с файлами
- •Процедуры и функции для работы с файлами.
Условный оператор, оператор множественного выбора Алгоритмы с ветвлением
Часто при выполнении алгоритма должны предлагаться различные действия в зависимости от выполнения или невыполнения некоторого условия. Такие алгоритмические структуры называют ветвлением.
Полное ветвление
Неполное ветвление
Пример.
Вычислить выражение
для введенного x.
Исходные данные: x.
Результат: y, или ‘функция не определена’
проверяемый случай |
x>=0 |
y |
результат |
x=9 |
9>=0 да |
y= |
y= |
x=-9 |
-9>=0 нет |
- |
функция не определена |
Пример.
Вычислить выражение
для введенного x.
проверяемый случай |
x>=0 |
y |
результат |
x=9 |
9>=0 да |
y= |
y= |
x=-9 |
-9>=0 нет |
- |
функция не определена |
Пример. Выбрать максимальное из 2х чисел a и b.
проверяемый случай |
x |
y |
результат |
a=9 b=15 |
9>15 нет |
15>9 да |
15 |
a=18 b=3 |
18>3 да |
- |
18 |
a=7 b=7 |
7>7 нет |
7>7 нет |
числа равны |
Пример. Выбрать максимальное из 3х чисел a, b, c.
проверяемый случай |
x |
max |
y |
результат |
a=9 b=15 c=2 |
9>15 нет |
15 |
2>15 нет |
15 |
a=8 b=3 с=22 |
8>3 да |
8 |
22>8 да |
22 |
a=12 b=9 c=1 |
17>9 нет |
17 |
1>17 нет |
17 |
Ветвление в Pascal Логические выражения
Переменные логического типа описываются с помощью служебного слова Boolean. Они могут принимать два значения: true – истина и false – ложь.
Var
F: Boolean;
Begin
F:=true;
…
Логическое выражение – выражение, содержащее константы, переменные, знаки математических операций, знаки отношений (=, <, >, <>, <=, >=) и логические операции (not, or, and, xor).
2+3=5 – true
2*5>20 – false
7+8<>10+5 – false
Логические операции
1. Отрицание NOT (не)
Инвертирует (меняет на противоположное) значение логического выражения.
x |
Not (x) |
true |
false |
false |
true |
NOT (2+3=5) – false
2. Логическое сложение OR (или)
x OR y – истинно, если истинно либо x, либо y.
x |
y |
x OR y |
true |
true |
true |
true |
false |
true |
false |
true |
true |
false |
false |
False |
(2>3) OR (7=7) – true
3. Логическое умножение AND (и)
x AND y – истинно, если истинны и x, и y.
x |
y |
x OR y |
true |
true |
true |
true |
false |
false |
false |
true |
false |
false |
false |
false |
(2>3) AND (7=7) – false
4. Исключающее или XOR
x XOR y – истинно, когда значения x и y различны.
x |
y |
x OR y |
true |
true |
true |
true |
false |
true |
false |
true |
false |
false |
false |
false |
Пример 1. Определить, является ли введенное число четным. Вывести true (четное), false (нечетное).
program primer;
var
N: integer;
f: boolean;
begin
Writeln(‘N=');
Readln(N);
F := N mod 2 =0;
Writeln(F);
Readln;
end.
Пример 2. Определить, принадлежит ли введенное число интервалу (0; 10).
0< x< 10
(x>0) and (x<10)
program primer;
var
x: integer;
f: boolean;
begin
Writeln(‘x=');
Readln(x);
F := (x>0) and (x<10);
Writeln(F);
Readln;
end.