Используя вспомогательные алгоритмы запрограммируйте рисование след фигур

Уроки 8 — 11
Вспомогательные алгоритмы
Метод последовательной детализации и сборочный метод
(§ 5. Вспомогательные алгоритмы и подпрограммы)
Работа с учебным исполнителем алгоритмов: использование вспомогательных алгоритмов

Что такое вспомогательный алгоритм

Решим следующую задачу:

Пусть требуется составить программу, по которой ГРИС напишет на экране четырехзначное число 1919.

Конечно, можно поступить так, как в предыдущей задаче, написав одну длинную программу, по которой исполнитель шаг за шагом нарисует эти цифры. Но с очевидностью возникает другая идея: поскольку здесь дважды повторяются цифры 1 и 9, нельзя ли сократить работу, написав программы рисования той и другой цифры только один раз? Это действительно можно сделать.

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

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

Обращение к вспомогательному алгоритму (процедуре)

В таком случае программа решения поставленной задачи разделяется на основную программу (основной алгоритм) и процедуры (вспомогательные алгоритмы). Каждая процедура должна иметь свое уникальное имя. Для рассматриваемой задачи имена процедур выберем следующими: ЕДИНИЦА и ДЕВЯТЬ. Тогда в основной программе команды обращения к этим процедурам будут такими:

сделай ЕДИНИЦА

сделай ДЕВЯТЬ

По этим командам управление передается соответствующим процедурам, и после их выполнения управление вернется к следующей команде основной программы.

Договоримся, что начальное и конечное состояния ГРИС при вычерчивании каждой цифры будут такими, как показано стрелками на рисунке выше (внизу, на восток). У единицы начальное и конечное состояния совпадают. Основная программа:

программа Число 1919

нач
сделай ЕДИНИЦА
прыжок
сделай ДЕВЯТЬ
прыжок
сделай ЕДИНИЦА
прыжок
сделай ДЕВЯТЬ

кон

Данный пример познакомил вас с новой командой из СКИ графического исполнителя — командой обращения к процедуре. Ее формат, т. е. общий вид, следующий:

сделай

Описание вспомогательного алгоритма (процедуры)

Вот и все! Так просто! Но теперь надо «объяснить» исполнителю, что такое ЕДИНИЦА и что такое ДЕВЯТЬ. Это делается в описаниях процедур (здесь порядок выполнения — по столбцам):

Формат описания процедуры:

процедура

нач

Кон

Имя в описании и имя в обращении должны точно совпадать (никаких склонений по падежам!). Описание процедур располагается после основной программы.

Добавив к программе описание процедуры, мы тем самым расширили систему команд исполнителя. В данной программе стало возможным использование команды обращения к этой процедуре.

Метод последовательной детализации

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

Метод программирования, при котором сначала пишется основная программа, в ней записываются обращения к пока еще не составленным подпрограммам, а потом описываются эти подпрограммы, называется методом последовательной (пошаговой) детализации. Причем количество шагов детализации может быть гораздо большим, чем в нашем примере, поскольку сами подпрограммы могут содержать внутри себя обращения к другим подпрограммам.

Сборочный метод

Возможен и другой подход к построению сложных программ: первоначально оставляется множество подпрограмм, которые могут понадобиться при решении задачи, а затем пишется основная программа, содержащая обращения к ним. Подпрограммы могут быть объединены в библиотеку подпрограмм и сохранены в долговременной памяти компьютера. Такую библиотеку можно постепенно пополнять новыми подпрограммами.

Например, если для управления графическим исполнителем создать библиотеку процедур рисования всех букв и цифр, то программа получения любого текста будет состоять из команд обращения к библиотечным процедурам.

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

Коротко о главном:

  • Для упрощения программирования сложных задач используются вспомогательные алгоритмы.
  • Вспомогательный алгоритм — это алгоритм решения некоторой подзадачи исходной (основной) задачи.
  • Вспомогательный алгоритм, записанный на языке программирования, называется процедурой.
  • Вспомогательный алгоритм должен быть описан. После этого в основном алгоритме можно использовать команду обращения к этому вспомогательному алгоритму.
  • Метод программирования, при котором сначала записывается основной алгоритм, а затем описываются использованные в нем вспомогательные алгоритмы, называется методом последовательной детализации, или программированием сверху вниз. Обратный порядок программирования называется программированием снизу вверх.

Вопросы и задания:

  1. Что такое основной алгоритм; вспомогательный алгоритм?
  2. Чем отличается описание вспомогательного алгоритма от обращения к вспомогательному алгоритму?
  3. Каковы правила описания вспомогательных алгоритмов (процедур) для исполнителя ГРИС?
  4. Как записывается команда обращения к процедуре в языке исполнителя ГРИС?
  5. В чем суть метода последовательной детализации?
  6. Что такое программирование снизу вверх; сверху вниз?
  7. Используя вспомогательные алгоритмы, запрограммируйте рисование следующих фигур:

Компьютерный практикум

1. Алгоритмы выполнения комплексного задания в среде «Стрелочка»

2. Архитектура исполнителя «Стрелочка»: реализация процедур

3. Базовые алгоритмические структуры в среде «Стрелочка»

4. Ввод и редактирование алгоритмов в среде «Стрелочка»

5. Вспомогательные алгоритмы

6. Графический исполнитель «Стрелочка»

7. Графический учебный исполнитель «Стрелочка». Интерфейс. Система команд

8. Демонстрация алгоритма с процедурами «Число 1919» в среде исполнителя «Стрелочка»

9. Домашнее задание N20

10. Задача в среде исполнителя «Стрелочка» по теме «Вспомогательные алгоритмы» (1 уровень сложности)

11. Задача в среде исполнителя «Стрелочка» по теме «Вспомогательные алгоритмы» (2 уровень сложности)

12. Задача в среде исполнителя «Стрелочка» по теме «Вспомогательные алгоритмы» (3 уровень сложности)

13. Итоговый тест к главе 5 «Управление и алгоритмы»

14. Комплексное тренировочное задание в среде «Стрелочка»

15. Конструирование алгоритма с процедурами «Число 1919» в среде исполнителя «Стрелочка»

16. Кроссворд по теме: «Управление и алгоритмы»

17. Логическая схема понятий по теме: «Управление и алгоритмы»

18. Нисходящий и библиотечный методы построения сложных алгоритмов

19. Режимы работы графического исполнителя «Стрелочка»

20. Способы записи алгоритмов для ГРИС «Стрелочка»

21. Тренировочный тест к главе 5 «Управление и алгоритмы»

Источник

Используя вспомогательные алгоритмы, запрограммируйте рисование следующих фигур: УЗОР КРЕСТ НОС

В 8:55 поступил вопрос в раздел Разное, который вызвал затруднения у обучающегося.

Вопрос вызвавший трудности

Ответ подготовленный экспертами Учись.Ru

Для того чтобы дать полноценный ответ, был привлечен специалист, который хорошо разбирается требуемой тематике «Разное». Ваш вопрос звучал следующим образом: Используя вспомогательные алгоритмы, запрограммируйте рисование следующих фигур: УЗОР КРЕСТ НОС

После проведенного совещания с другими специалистами нашего сервиса, мы склонны полагать, что правильный ответ на заданный вами вопрос будет звучать следующим образом:

ПРОГРАММА по пунктам
Рисунок 1
(стрелка — вправо)
Программа Гусеница
Нач
сделай КВАДРАТ
сделай КВАДРАТ
шаг
шаг
кон
процедура КВАДРАТ
нач
шаг
шаг
поворот
шаг
шаг
шаг
поворот
поворот
поворот
шаг
шаг
поворот
поворот
поворот
шаг
шаг
шаг
поворот
кон

Рисунок 2
(стрелка — вправо)
Программа Крест
нач
сделай ЛЕСЕНКА
сделай ЛЕСЕНКА
сделай ЛЕСЕНКА
сделай ЛЕСЕНКА
кон
процедура ЛЕСЕНКА
нач
шаг
шаг
поворот
поворот
поворот
шаг
шаг
поворот
шаг
шаг
поворот
кон

Рисунок 3
(стрелка — вправо)
Программа Нос
Нач
сделай Н
прыжок
сделай О
прыжок
прыжок
прыжок
сделай С
кон

Процедура Н
нач
поворот
шаг
шаг
шаг
шаг
поворот
поворот
прыжок
прыжок
поворот
шаг
шаг
поворот
шаг
шаг
поворот
поворот
шаг
шаг
поворот
кон

Процедура О
нач
шаг
шаг
поворот
шаг
шаг
шаг
шаг
поворот
шаг
шаг
поворот
шаг
шаг
шаг
шаг
поворот
кон

Процедура С
нач
шаг
поворот
прыжок
прыжок
прыжок
прыжок
поворот
шаг
поворот
шаг
шаг
шаг
шаг
кон

Рисунок 4
(стрелка — вправо)
Программа Лесенка
нач
сделай УГОЛ
сделай УГОЛ
сделай УГОЛ
кон
процедура УГОЛ
нач
поворот
шаг
поворот
поворот
поворот
шаг
кон

ВАРИАНТ ДВИЖЕНИЯ
1)
программа ЗИГГИ
нач
сделай ЗИГ
сделай ЗИГ
шаг
кон
процедура ЗИГ
нач
шаг
поворот
шаг
поворот
поворот
поворот
шаг
поворот
поворот
поворот
шаг
поворот
кон
2)
программа КРЕСТ
нач
сделай МЕТ
сделай МЕТ
сделай МЕТ
сделай МЕТ
кон
процедура МЕТ
нач
шаг
поворот
шаг
поворот
поворот
поворот
шаг
поворот
поворот
поворот
кон
3)
программа НОУЗ
нач
сделай ЭН
сделай ОУ
сделай ЭС

кон
процедура ЭН
нач
шаг
шаг
поворот
поворот
прыжок
поворот
поворот
поворот
шаг
поворот
прыжок
поворот
поворот
шаг
шаг
поворот
прыжок
кон
процедура ОУ
нач
прыжок
поворот
шаг
шаг
поворот
шаг
поворот
шаг
шаг
поворот
шаг
прыжок
кон
процедура ЭС
нач
поворот
шаг
шаг
поворот
поворот
поворот
шаг
поворот
поворот
поворот
прыжок
прыжок
поворот
поворот
поворот
шаг
кон
4)
программа ЛЕСЕНКА
нач
сделай ГЭ
сделай ГЭ
сделай ГЭ
кон
процедура ГЭ
нач
шаг
поворот
поворот
поворот
шаг
поворот
поворот
поворот
кон

программа НОС
нач
делай БУКВА Н
прыжок
делай БУКВА О
прыжок
делай БУКВА С
кон

процедура БУКВА Н
поворот
поворот
поворот
шаг
шаг
поворот
поворот
прыжок
поворот
поворот
поворот
шаг
поворот
шаг
поворот
поворот
прыжок
шаг
поворот
конец процедуры

процедура БУКВА О
поворот
шаг
шаг
поворот
поворот
поворот
шаг
поворот
поворот
поворот
шаг
шаг
поворот
поворот
поворот
шаг
поворот
поворот
прыжок
конец процедуры

процедура БУКВА С
поворот
шаг
шаг
поворот
поворот
поворот
шаг
поворот
поворот
поворот
прыжок
прыжок
поворот
поворот
поворот
шаг
конец процедуры

НЕСКОЛЬКО СЛОВ ОБ АВТОРЕ ЭТОГО ОТВЕТА:

Работы, которые я готовлю для студентов, преподаватели всегда оценивают на отлично. Я занимаюсь написанием студенческих работ уже более 4-х лет. За это время, мне еще ни разу не возвращали выполненную работу на доработку! Если вы желаете заказать у меня помощь оставьте заявку на этом сайте. Ознакомиться с отзывами моих клиентов можно на этой странице.

Захарова Дэнна Яковлевна — автор студенческих работ, заработанная сумма за прошлый месяц 55 341 рублей. Её работа началась с того, что она просто откликнулась на эту вакансию

ПОМОГАЕМ УЧИТЬСЯ НА ОТЛИЧНО!

Выполняем ученические работы любой сложности на заказ. Гарантируем низкие цены и высокое качество.

Деятельность компании в цифрах:

Зачтено оказывает услуги помощи студентам с 1999 года. За все время деятельности мы выполнили более 400 тысяч работ. Написанные нами работы все были успешно защищены и сданы. К настоящему моменту наши офисы работают в 40 городах.

Ответы на вопросы — в этот раздел попадают вопросы, которые задают нам посетители нашего сайта. Рубрику ведут эксперты различных научных отраслей.

Полезные статьи — раздел наполняется студенческой информацией, которая может помочь в сдаче экзаменов и сессий, а так же при написании различных учебных работ.

Площадка Учись.Ru разработана специально для студентов и школьников. Здесь можно найти ответы на вопросы по гуманитарным, техническим, естественным, общественным, прикладным и прочим наукам. Если же ответ не удается найти, то можно задать свой вопрос экспертам. С нами сотрудничают преподаватели школ, колледжей, университетов, которые с радостью помогут вам. Помощь студентам и школьникам оказывается круглосуточно. С Учись.Ru обучение станет в несколько раз проще, так как здесь можно не только получить ответ на свой вопрос, но расширить свои знания изучая ответы экспертов по различным направлениям науки.

Источник

Читайте также:  Презентация поэтапное рисование амфоры
Оцените статью