- •Глава 1
- •§ 1.1 Объекты и их имена
- •І Коротко о главном
- •? Вопросы и задания
- •§ 1.2 Признаки объектов
- •І Коротко о главном
- •? Вопросы и задания
- •§ 1.3. Отношение объектов
- •І Коротко о главном
- •? Вопросы и задания
- •§ 1.4. Разновидности объектов и их классификация
- •2. Основные объекты:
- •? Вопросы и задания
- •§ 1.5 Состав объектов
- •І Коротко о главном
- •? Вопросы и задания
- •§ 1.6 Системы объектов
- •І Коротко о главном
- •? Вопросы и задания
- •§ 1.7 Система и окружающая среда
- •І Коротко о главном
- •? Вопросы и задания
- •§ 1.8 Персональный компьютер как система
- •І Коротко о главном
- •? Вопросы и задания
- •Глава 2
- •§ 2.1 Модели объектов и их назначение
- •І Коротко о главном
- •? Вопросы и задания
- •§ 2.2. Информационные модели
- •Виды информационных моделей
- •І Коротко о главном
- •? Вопросы и задания
- •§ 2.3. Словесные информационные модели
- •І Коротко о главном
- •? Вопросы и задания
- •§ 2.4. Математические модели
- •І Коротко о главном
- •? Вопросы и задания
- •§ 2.5. Табличные информационные модели Структура и правила оформления таблицы
- •Простые таблицы
- •Сложные таблицы
- •І Коротко о главном
- •? Вопросы и задания
- •§ 2.6.Табличное решение логических задач
- •І Коротко о главном
- •? Вопросы и задания
- •§ 2.7. Вычислительные таблицы
- •І Коротко о главном
- •? Вопросы и задания
- •§ 2.8. Электронные таблицы
- •І Коротко о главном
- •? Вопросы и задания
- •§ 2.9. Графики и диаграммы Зачем нужны графики и диаграммы
- •Наглядное представление процессов изменения величин
- •Наглядное представление о соотношении величин
- •Визуализация многорядных данных
- •Успеваемость учеников 7 класса
- •Успеваемость учеников 7 класса
- •Успеваемость учеников 7 класса
- •І Коротко о главном
- •? Вопросы и задания
- •§ 2.10. Схемы Многообразие схем
- •И нформационные модели на графах
- •І Коротко о главном
- •? Вопросы и задания
- •Глава 3
- •§ 3.1 Алгоритм – модель деятельности исполнителя
- •І Коротко о главном
- •? Вопросы и задания
- •§ 3.2 Управление исполнителем Чертежник Знакомимся с Чертежником
- •Пример алгоритма управления Чертежником
- •Чертежник учится, или Использование вспомогательных алгоритмов
- •Цикл повторить n раз
- •І Коротко о главном
- •? Вопросы и задания
- •§ 3.3 Управление исполнителем Робот Знакомимся с Роботом
- •Пример алгоритма управления Роботом
- •Простые и составные условия
- •Команда ветвления
- •І Коротко о главном
- •? Вопросы и задания
- •Глава 4
- •Верните изменённые параметры в исходное положение.
- •Верните изменённые параметры в исходное положение.
- •Теперь мы умеем
- •С казочный мир
- •Знаки препинания в заголовках
- •Теперь мы умеем
- •Мой словесный портрет
- •Крупнейшие озера
- •Экспорт/импорт России за 2000-2005 гг. (в млрд долл.)
- •Т еперь мы умеем
- •Техника безопасности и организация рабочего места
- •Текстовый процессор Microsoft Word Клавиши быстрого перемещения по тексту
- •Функции клавиш {Enter}, {Delete} и {Backspace}
- •Работа со списками
- •Работа с таблицами
Простые и составные условия
В цикле «пока» могут использоваться не только простые, но и составные условия.
Составное условие образуется из одного или нескольких простых условий и служебных слов И, ИЛИ, НЕ.
Рассмотрим составное условие А И В, где А, В — простые условия. Условие А И В выполнено, когда выполнено каждое из двух входящих в него простых условий.
Пусть А - простое условие сверху свободно, В — простое условие справа свободно. Рассмотрим подробно проверку составного условия А И В - сверху свободно и справа свободно. (рис. 3.15):
а) выполнено условие А (сверху свободно), выполнено условие В (справа свободно). Составное условие А И В (сверху свободно И справа свободно)также выполнено.
б) выполнено условие А, условие В не выполнено. Составное условие А И В не выполнено.
в) не выполнено условие А, условие В выполнено. Составное условие А И В не выполнено.
г) не выполнено условие А, не выполнено условие В. Составное условие А И В не выполнено.
Н ужно ли проверять условие В в составном условии АИВ, если условие А не выполнено?
Составное условие А ИЛИ В выполнено, когда выполнено хотя бы одно из двух входящих в него простых условий.
Рассмотрим проверку составного условия А ИЛИ В — сверху свободно ИЛИ справа свободно (см. рис. 3.15):
а) выполнено условие А (сверху свободно), выполнено условие В (справа свободно). Составное условие А ИЛИ В (сверху свободно ИЛИ справа свободно) выполнено;
б) выполнено условие А, не выполнено условие В. Составное условие А ИЛИ В выполнено;
в) не выполнено условие А, выполнено условие В. Составное условие А ИЛИ В выполнено;
г) не выполнено условие А, не выполнено условие В. Составное условие А ИЛИ В не выполнено.
Н ужно ли проверять условие В в составном условии А ИЛИ В, если условие А выполнено?
Составное условие НЕ А выполнено, когда не выполнено условие А.
П
усть
А —
простое условие закрашено.
Рассмотрим проверку составного условия
НЕ
А (рис. 3.16).
а) условие А
выполнено, условие НЕ
А (НЕ
закрашено) не выполнено.
б) условие А не выполнено, условие НЕ А (НЕ закрашено) выполнено.
Рассмотрим пример использования составного условия.
Известно, что Робот находится где-то в вертикальном коридоре. Ни одна из клеток коридора не закрашена.
Составим алгоритм, под управлением которого Робот закрасит все клетки этого коридора и вернется в исходное положение.
Так как Роботу предстоит закрасить только клетки коридора, мы должны «научить» его их распознавать. Чем же клетки коридора отличаются от всех прочих клеток поля? Из рис. 3.17 видно, что каждая клетка коридора слева и справа ограничена стеной.
Р
обот
находится в коридоре, пока слева стена
и справа стена. В СКИ нашего исполнителя
такие условия не предусмотрены. Там
есть противоположные условия: слева
свободно, справа свободно. Используем
служебное слово НЕ:
слева стена —> НЕ слева свободно справа стена —> НЕ справа свободно
Нужное условие примет вид:
НЕ слева свободно И НЕ справа свободно.
Представим план действий Робота укрупненными шагами (рис. 3.18).
Для простоты предположим, что над коридором и под коридором есть хотя бы по одной клетке без стен (иначе придется делать дополнительные проверки сверху свободно, снизу свободно).
Чтобы закрасить все клетки коридора, находящиеся выше Робота, прикажем Роботу шагнуть вверх и выполним цикл «пока»:
вверх ПОКА НЕ слева свободно И НЕ справа свободно ДЕЛАТЬ
закрась вверх
КОНЕЦ
Под управлением этого алгоритма Робот закрасит все клетки коридора, находящиеся выше от него, и окажется на клетке рядом с верхней границей коридора.
П ри каком исходном положении Робота этот цикл не выполнится ни разу?
Командой вниз вернем Робота в коридор. Наша задача — вернуть его в исходную точку. Эта точка имеет единственный отличительный признак — она не закрашена. Поэтому пока занимаемая Роботом клетка оказывается закрашенной, будем перемещать его вниз:
вниз ПОКА закрашено ДЕЛАТЬ вниз КОНЕЦ
Под управлением этого алгоритма Робот окажется в исходной клетке.
Выполнив команду вниз, Робот пройдет исходную клетку и займет первую клетку, расположенную ниже исходной. Теперь можно закрашивать клетки коридора, расположенные ниже исходной:
в низ ПОКА НЕ слева свободно И НЕ справа свободно ДЕЛАТЬ закрась вниз КОНЕЦ
Возможна ли ситуация, что этот цикл не выполнится ни разу?
Так как, выполнив предыдущий алгоритм, Робот окажется под коридором, командой вверх вернем его в коридор. Возвращение в исходную точку обеспечивается алгоритмом:
вверх ПОКА закрашено ДЕЛАТЬ вверх КОНЕЦ
По команде закрась Робот закрашивает исходную точку.
Полностью программа управления Роботом выглядит так:
вверх ПОКА НЕ слева свободно И НЕ справа свободно ДЕЛАТЬ закрась вверх КОНЕЦ вниз ПОКА закрашено ДЕЛАТЬ вниз КОНЕЦ вниз ПОКА НЕ слева свободно И НЕ справа свободно ДЕЛАТЬ закрась вниз КОНЕЦ вверх ПОКА закрашено ДЕЛАТЬ вверх КОНЕЦ закрась
