Урок 13. Алгоритмическая конструкция “Ветвление”

Цель урока: изучить алгоритмическую конструкцию «ветвление», команду ветвления и составные условия.


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

 Полная форма Сокращенная форма
 if   <условие>
    then   команды 1
    else   команды 2;
  if   <условие> 
    then   команды 1;

Строка if <условие> then   является заголовком ветвления. Эту строку можно прочитать следующим образом: «Если условие верно, то». После слова  then записывается последовательность команд 1, которая выполнится, если условие истинно. После слова else записывается последовательность команд 2, которая выполнится, если условие ложно.      

В случае сокращенной формы команды ветвления команда 1 исполняется только тогда, когда условие истинно, в противном случае ничего не выполняется.

Ветвление может изображаться на блок-схеме следующим образом:

Полная форма

Сокращенная форма

Если при выполнении или невыполнении условия требуется не одно, а несколько действий, то следует применить составной оператор.

Составной оператор – последовательность команд, заключенная в операторные скобки begin  и  end

Формат составного оператора:

begin 
   команда 1;
   команда 2;
   ...............
   команда n;
 end;

Составное условие — условие, которое образуется из нескольких простых условий, соединенных друг с другом логическими операциями: AND,ORNOT.

Система условий для исполнителя Робот построена таким образом, что можно обойтись без использования логической операции отрицания. Отрицанием условия FreeFromLeft будет условие notFreeFromLeft. Однако условие «слева не свободно» означает, что там стена. Поэтому вместо условия notFreeFromLeft может быть использовано условие WallFromLeft.

Отрицания для других условий показаны в таблице:

 Условие  Отрицание
 WallFromLeft  FreeFromLeft
 WallFromRight  FreeFromRight
 WallFromUp  FreeFromUp
 WallFromDown  FreeFromDown
 CellIsPainted  CellIsFree

Пример программы

Выполнить проверяемое задание if1 из встроенного задачника. Обстановка исполнителя Робот определяется случайным образом и принимает вид, представленный на изображениях.

uses Robot;
begin
  Task('if1'); 
  right;
  if FreeFromUp then
  begin
    up; right; down;
  end
  else
  begin
    down; right; up;
  end; 
  paint;
end.

Задания по теме урока

Если необходимо, скачайте и установите среду разработки PascalABC.NET (скачать)

Задание 1. Для заданной обстановки поля Робота определите, какие из составных условий истинны, а какие ложны. Ответьте письменно в рабочей тетради. 

УсловиеЗначение 
WallFromLeft or CellIsPainted 
WallFromUp and WallFromDown 
Not CellIsPainted and FreeFromRight 
Not (WallFromUp or FreeFromRight) 
WallFromDown and CellIsFree 
(WallFromUp or WallFromDown) and FreeFromRight 

Задание 2. В системе программирования Pascal ABC выполните проверяемое задание if2 для исполнителя Робот. Стены могут быть независимо слева, справа, сверху и снизу. Обращайте внимание на начальное и конечное положение Робота. 

Задание 3. В системе программирования Pascal ABC выполните проверяемое задание if3 для исполнителя Робот. Робот может находиться в любом из углов. Обращайте внимание на начальное и конечное положение Робота. 

Задание 4. В системе программирования Pascal ABC выполните проверяемое задание if4 для исполнителя Робот. Стена может быть слева, справа, сверху и снизу. Обращайте внимание на начальное и конечное положение Робота. 

Дополнительные задания

Это изображение имеет пустой атрибут alt; его имя файла - hw-e1653285769766.png

Домашнее задание

§ 12 учебного пособия, ответить на вопросы


Форма отправки решений

Форма видна только зарегистрированным пользователям.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *