Сприймання і усвідомлення нового навчального матеріалу

У попередніх задачах ви складали алгоритм для виконавця ВОСЬМИНІЖКА за умови, що розміри ділянки заздалегідь відомі. Тому, якщо змінити ці розміри, наприклад, довжину коридору, обмеженого перешкодами, потрібно вносити зміни до тексту програми, зокрема змінювати кількість повторень циклу. А чи не можна скласти такий універсальний алгоритм, який би правильно працював при довільній довжині коридору? Виявляється, можна. Але для цього потрібно в алгоритмі використати іншу команду циклу, кількість повторень якого заздалегідь невідома, а залежить від результату перевірки певної умови.

Загальний вигляд цієї команди циклу такий:

Повтори поки <умова> <Команди тіла циклу> Все

Нехай ВОСЬМИНІЖКА стоїть перед горизонтальним коридором невідомої довжини. Потрібно визначити кількість зафарбованих клітинок у ньому.

Вправо Кількість:=0 Повтори поки Зверху перешкода Якщо Зафарбовано Кількість:=Кількість+1 Все Вправо Все Повідомлення («Кількість зафарбованих клітинок у коридорі:», Кількість)

Продемонструємо виконання цього алгоритму для конкретного коридору довжиною 5 клітинок, у якому зафарбовані вказані клітинки.

Команда Результат виконання
Вправо Перехід до першої клітинки коридору.
Кількість:=0 Кількіть=0
Зверху перешкода Так
Зафарбовано Так
Кількість:=Кількість+1 Кількість=0+1=1
Вправо Перехід до другої клітинки коридору.
Зверху перешкода Так
Зафарбовано Ні
Вправо Перехід до третьої клітинки коридору.
Зверху перешкода Так
Зафарбовано Так
Кількість:=Кількість+1 Кількість=1+1=2
Вправо Перехід до четвертої клітинки коридору.
Зверху перешкода Так
Зафарбовано Так
Кількість:=Кількість+1 Кількість=2+1=3
Вправо Перехід до п’ятої клітинки коридору.
Зверху перешкода Так
Зафарбовано Ні
Вправо Вихід з коридору.
Зверху перешкода Ні
Повідомлення Кількість зафарбованих клітинок у коридорі: 3

Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: