Операторы управления языка Паскаль
Оператор условного перехода if…then
Формат оператора IF:
IF <выражение > THEN <оператор1> [ELSE<оператор2>]
Здесь «выражение» – выражение логического типа. Если оно истинно, выполняется оператор1. Если оно ложно, то либо управление передается на оператор, следующий сразу за оператором IF, либо выполняется оператор2, расположенный после слова ELSE.
· инструкция If используется для выбора одного из двух направлений дальнейшего хода программы (последовательности инструкций, которые должны быть выполнены);
· выбор последовательности инструкций осуществляется во время выполнения программы в зависимости от выполнения условия;
· условие – это выражение логического типа (Boolean), которое может принимать одно из двух значений:
True (истина – условие выполняется) или False (ложь – условие не выполняется);
· при помощи логических операций And (логическое «И» и (логическое «ИЛИ») из простых условий можно строить сложные.
Пример:
Значение функции y нужно вычислить по формуле:
![]() | ![]() |
Рисунок 1 – блок-схема разветвления |
2. Логические (булевские) выражения строятся из логических констант и переменных, логических функций, выражений отношения путем применения круглых скобок и логических операций.
В паскале определены следующие логические операции (приведены в порядке убывания приоритета):
NOT – логическое отрицание;
AND – логическое «и»;
OR – логическое «или».
Результаты применения данных операций определяются таблицами истинности (см. табл.1).
Таблица 1
Значение А | Значение В | Результат |
A and B | ||
False | False | False |
True | False | False |
False | True | False |
True | True | True |
A or B | ||
False | False | False |
True | False | True |
False | True | True |
True | True | True |
Not A | ||
False | True | |
True | False |
|
Пример:
a1 or a2
Операции отношения (=, < >, <, >, <=, >=) выполняют сравнение двух операндов. В результате выполнения операции отношения получают значение булевского типа – True или False. Операции отношения можно применять к данным типа Real, Integer, Boolean, Char.
Задание для СРС:
1. Написать программу проверки знания истории архитектуры. Программа должна вывести вопрос и три варианта ответа. Пользователь должен выбрать правильный ответ и ввести его номер. Ниже представлен рекомендуемый вид экрана во время работы программы (данные, введенные пользователем, выделены полужирным шрифтом). | Архитектор Исаакиевского собора: 1. Доменико Трезини 2. Огюст Монферран 3. Карл Росси Введите номер правильного ответа и нажмите <Enter> - > 2 Вы ошиблись. Архитектор Исаакиевского собора – Огюст Монферран. |
{Проверка знания истории архитектуры}
Var
otv: integer; {номер ответа, выбранного испытуемым}
Begin
writeln (‘Архитектор Исаакиевского собора:’);
writeln (‘1. Доменико Трезини’);
writeln (‘2. Огюст Монферран’);
writeln (‘3. Карл Росси’);
writeln;
writeln (‘Введите номер правильного ответа и нажмите <Enter>’);
writeln (‘– >’);
readln (otv);
if otv = 2
then writeln (‘Правильно.’)
Else
Begin
writeln (‘Вы ошиблись.’);
writeln (‘Архитектор Исаакиевского собора’, ‘Огюст Монферран.’);
end;
readln;
End.
Задание на СРСП:
1. Создание программы на Turbo Pascal 7.0.
2. Разработка алгоритма и продумывание реализации будущей программы
Написать программу, которая сравнивает два числа, введенных с клавиатуры. Программа должна указать, какое число больше, или, если числа равны, вывести соответствующее сообщение. Ниже представлен рекомендуемый вид экрана во время работы программы. | Введите в одной строке два целых числа и нажмите <Enter>. - > 34 67 34 меньше 67. |
3. Запуск интегрированной среды разработчика Turbo Pascal 7.0.. Создание файла. Набор текста программы в окне. Проверка текста программы на наличие синтаксических ошибок. Проверка программы на предмет правильности ее работы и выполнения задачи. Сохранение файла.
|
Контроль выполненного задания состоится на занятиях СРСП (по расписанию занятий).
4. Основы алгоритмизации и программирования.Turbo Pascal 7.0.
Форма контроля – рефераты, 10 стр. Сроки сдачи – на следующей неделе.
Контрольные вопросы:
А. Для письменного контроля:
1. Что такое условный оператор?
2. Как выглядит условный оператор?
3. Что может стоять в качестве условия при использовании условного оператора?
4. Какая разница между простым и составным оператором?
5. Что такое составной оператор?
6. Как ограничиваются операторы в его составе?
7. Приведите пример условного оператора.
8. Что такое операторные скобки на языке Паскаль?
9. Приведите примеры арифметических и логических выражений.
10. С помощью условных операторов выполните проверку неравенства x<y<z.
Б. Для компьютерного тестирования:
1. Оператор присваивания записывается со знаком:
A):
B);
C) \
D) /
2. Значение переменной x после выполнения операторов x:=10; x:=x+3:
A) 13
B) 10
C) x+3
D) 3
3. Значения переменных x и y после выполнения операторов x:=2; y:=5; x:=y; y:=x:
|
A) 5 и 5
B) 2 и 2
C) 2 и 5
D) 5 и 2
4. Составной оператор в Паскаль:
A) begin...end
B) procedure...
C) program...end
D) function...
Какая из записей на Паскаль верна?
A) write (’z=’,z:5);
B) while (’’z=’’,z);
C) for z=5;
D) z=5;