что такое основной алгоритм вспомогательный алгоритм
ГДЗ Информатика 9 класс Семакин — Вспомогательные алгоритмы и подпрограммы
ОТВЕТЫ Решебник — ГДЗ Инфо рматика — §5.Вспомогательные алгоритмы и подпрограммы , Семакин 9 класс
Вопросы и задания
1 Что такое основной алгоритм; вспомогательный алгоритм?
2 Чем отличается описание вспомогательного алгоритма от обращения к вспомогательному алгоритму?
3 Каковы правила описания вспомогательных алгоритмов (процедур) для исполнителя ГРИС?
4 Как записывается команда обращения к процедуре в языке исполнителя ГРИС?
5 В чем суть метода последовательной детализации?
6 Что такое программирование снизу вверх; сверху вниз?
7 Используя вспомогательные алгоритмы, запрограммируйте рисование следующих фигур:
Ответы на вопросы параграф 5 из учебника Семакина 9 класс
1. Вспомогательный алгоритм — это алгоритм решения некоторой подзадачи из исходной (основной) задачи.
2. описание пишется вначале программы, а обращение это уже непосредственная ссылка на строку с началом алгоритма
3. Имя в описании и имя в обращении должны совпадать (никаких склонений по падежам). Описание процедур располагается после самой программы
4. Команда обращения к процедуре имеет формат, т. е. общий вид, следующий: сделай
5. Метод программирования, при котором сначала записывается основной алгоритм, а затем описываются использованные в нем вспомогательные алгоритмы, называется методом последовательной детализации, или программированием сверху вниз.
6. Метод программирования, при котором сначала записывается основной алгоритм, а затем описываются использованные в нем вспомогательные алгоритмы, называется программированием сверху вниз. Обратный порядок программирования называется программированием снизу вверх.
7. ПРОГРАММА по пунктам
Рисунок 1
(стрелка — вправо)
Программа Гусеница
Нач
сделай КВАДРАТ
сделай КВАДРАТ
шаг
шаг
кон
процедура КВАДРАТ
нач
шаг
шаг
поворот
шаг
шаг
шаг
поворот
поворот
поворот
шаг
шаг
поворот
поворот
поворот
шаг
шаг
шаг
поворот
кон
Рисунок 2
(стрелка — вправо)
Программа Крест
нач
сделай ЛЕСЕНКА
сделай ЛЕСЕНКА
сделай ЛЕСЕНКА
сделай ЛЕСЕНКА
кон
процедура ЛЕСЕНКА
нач
шаг
шаг
поворот
поворот
поворот
шаг
шаг
поворот
шаг
шаг
поворот
кон
Рисунок 3
(стрелка — вправо)
Программа Нос
Нач
сделай Н
прыжок
сделай О
прыжок
прыжок
прыжок
сделай С
кон
Процедура Н
нач
поворот
шаг
шаг
шаг
шаг
поворот
поворот
прыжок
прыжок
поворот
шаг
шаг
поворот
шаг
шаг
поворот
поворот
шаг
шаг
поворот
кон
Процедура О
нач
шаг
шаг
поворот
шаг
шаг
шаг
шаг
поворот
шаг
шаг
поворот
шаг
шаг
шаг
шаг
поворот
кон
Процедура С
нач
шаг
поворот
прыжок
прыжок
прыжок
прыжок
поворот
шаг
поворот
шаг
шаг
шаг
шаг
кон
Рисунок 4
(стрелка — вправо)
Программа Лесенка
нач
сделай УГОЛ
сделай УГОЛ
сделай УГОЛ
кон
процедура УГОЛ
нач
поворот
шаг
поворот
поворот
поворот
шаг
кон
Литература: Учебник:Информатика, 9 класс. ФГОС Автор: И. Г. Семакин, Л. А. Залогова, С. В. Русаков, Л. В. Шестакова.
Информатика. 7 класс
Электронное приложение к учебному пособию
Напишите нам
белый — основные материалы, обязательные для изучения;
голубой — примеры, иллюстрирующие основные материалы;
желтый — определения основных понятий;
светло-зеленый — исторические сведения, информация об ученых, внесших вклад в развитие информатики, и другие интересные факты.
В учебном пособии используются следующие условные обозначения:
— вопросы и задания для проверки знаний;
— раздел «Упражнения» содержит задания, при выполнении которых используется компьютер;
— раздел «Упражнения» содержит задания для выполнения в тетради;
— раздел «Упражнения» содержит задания, при выполнении которых может быть использована информация, размещенная на Национальном образовательном портале;
* — задание или пример для любознательных.
§ 8. Алгоритмы и исполнители
8.1. Понятие алгоритма
Вспомним некоторые понятия, с которыми вы познакомились в 6-м классе.
Алгоритм — понятная и конечная последовательность точных действий (команд), формальное выполнение которых позволяет получить решение поставленной задачи.
Исполнитель алгоритма — человек (группа людей) или техническое устройство, которые понимают команды алгоритма и умеют правильно их выполнять.
Система команд исполнителя — команды, которые понимает и может выполнить исполнитель.
Любой исполнитель имеет ограниченную систему команд. Все команды исполнителя можно разделить на группы:
Компьютер является универсальным исполнителем.
Запись алгоритма в виде последовательности команд, которую может выполнить компьютер, называют программой.
Существуют следующие способы представления алгоритмов:
(Схематически данные способы представлены в примере 8.1.)
8.2. Исполнитель Чертежник
В прошлом учебном году вы познакомились с исполнителем Чертежник, который предназначен для построения рисунков и чертежей на координатной плоскости (пример 8.2).
Чертежник имеет перо, с помощью которого он может рисовать отрезки на плоскости. Исходное положение пера исполнителя Чертежник поднято и находится над точкой (0, 0) — началом координат. После завершения рисования перо также должно быть поднято.
Напомним систему команд исполнителя Чертежник:
Переместить перо Чертежника в точку (x,y)
Поднять перо Чертежника
Опустить перо Чертежника
Создать поле размером N x M
Сместить перо Чертежника на а единиц по горизонтали и b единиц по вертикали
Пример 8.3. Составим алгоритм решения задачи.
Прямоугольный участок, длина которого в 2 раза больше ширины, огородили забором длиной 120 м. Определите длину и ширину участка. Напишите программу, выполнив которую исполнитель Чертежник построит чертеж забора этого участка. Масштаб: 1 клетка равна 10 м.
Словесное описание алгоритма:
8.3. Алгоритмическая конструкция следование
Существует большое количество алгоритмов, в которых все команды выполняются последовательно одна за другой в том порядке, в котором они записаны. В подобных алгоритмах отсутствуют команды, меняющие порядок выполнения других команд. Такие программы вы составляли в прошлом году для исполнителя Чертежник.
Алгоритмическая конструкция следование — последовательность команд алгоритма, которые выполняются в том порядке, в котором они записаны.
Следование использовалось в примере 8.3, в котором описывались алгоритмы вычисления длины и ширины участка и построения прямоугольника исполнителем Чертежник.
Алгоритмическая конструкция следование представлена в примере 8.4 и примере 8.5.
8.4. Вспомогательные алгоритмы
Нередко в одной программе приходится рисовать одно и то же изображение несколько раз. Получение этого изображения удобно оформить в виде вспомогательного алгоритма, который можно использовать нужное число раз, обращаясь к его названию.
Вспомогательный алгоритм — алгоритм, целиком используемый в составе другого алгоритма.
Вспомогательный алгоритм решает некоторую подзадачу основной задачи. Вызов вспомогательного алгоритма в программе заменяет несколько команд одной командой.
Пример 8.6. Напишем программу, выполнив которую исполнитель Чертежник нарисует следующий рисунок:
Описание основного алгоритма будет следующим:
При решении задач над проектом могут работать несколько человек (или десятков человек). Каждый из членов коллектива делает часть своей работы и оформляет ее как отдельный вспомогательный алгоритм.
Алгоритмы построения чертежей человек разрабатывает с глубокой древности. Появление чертежей связано с практической деятельностью человека — возведением укреплений и городских построек. Первые сведения о чертежах, напоминающих современные, связаны с именем Леонардо да Винчи (1452—1519) —итальянского ученого и художника, который в технических рисунках и эскизах раскрывал свои идеи в области техники и строительства.
В настоящее время чертежи широко применяются в различных отраслях строительства, сельского хозяйства, промышленности и т. д. Сегодня для построения чертежей используются специальные программы, позволяющие автоматизировать процесс черчения. Для применения таких программ специалист должен овладеть навыками работы с имеющимися в них инструментами и алгоритмами построения различных чертежей. Вот логотипы подобных программ:
Пример 8.2. Поле исполнителя Чертежник.
Пример 8.3. Запись алгоритма по действиям:
Исполнитель Чертежник должен нарисовать прямоугольник длиной 4 клетки и шириной 2 клетки. Программа для исполнителя Чертежник :
Что такое основной алгоритм вспомогательный алгоритм
Понятие алгоритма. Исполнитель алгоритма. Свойства алгоритма. Способы записи алгоритмов.
Основные алгоритмические структуры: следование, ветвление, цикл; изображение
на блок-схемах. Вспомогательные алгоритмы.
Алгоритм – описание последовательности действий (план), строгое исполнение которых приводит к решению поставленной задачи за конечное число шагов.
Вы постоянно сталкиваетесь с этим понятием в различных сферах деятельности человека (кулинарные книги, инструкции по использованию различных приборов, правила решения математических задач. ). Обычно мы выполняем привычные действия не задумываясь, механически. Например, вы хорошо знаете, как открывать ключом дверь. Однако, чтобы научить этому малыша, придется четко разъяснить и сами эти действия и порядок их выполнения:
1. Достать ключ из кармана.
2. Вставить ключ в замочную скважину.
3. Повернуть ключ два раза против часовой стрелки.
Если вы внимательно оглянитесь вокруг, то обнаружите множество алгоритмов которые мы с вами постоянно выполняем. Мир алгоритмов очень разнообразен. Несмотря на это, удается выделить общие свойства, которыми обладает любой алгоритм.
Дискретность (от лат. discretus — разделённый, прерывистый, раздельность) (алгоритм должен состоять из конкретных действий, следующих в определенном порядке);
Детерминированность (от. лат. determinate – определенность, точность) (любое действие должно быть строго и недвусмысленно определено в каждом случае);
Конечность (каждое действие и алгоритм в целом должны иметь возможность завершения);
Массовость (один и тот же алгоритм можно использовать с разными исходными данными);
Результативность (отсутствие ошибок, алгоритм должен приводить к правильному результату для всех допустимых входных значениях).
1. Линейный алгоритм (описание действий, которые выполняются однократно в заданном порядке);
2. Циклический алгоритм (описание действий, которые должны повторятся указанное число раз или пока не выполнено заданное условие);
3. Разветвляющийся алгоритм (алгоритм, в котором в зависимости от условия выполняется либо одна, либо другая последовательность действий);
4. Вспомогательный алгоритм (алгоритм, который можно использовать в других алгоритмах, указав только его имя).
На практике наиболее распространены следующие формы представления алгоритмов:
В письменной форме на естественном языке.
В письменной форме на формальном языке.
Для более наглядного представления алгоритма широко используется графическая форма – блок-схема, которая составляется из стандартных графических объектов.
При графическом представлении алгоритм изображается в виде последовательности связанных между собой функциональных блоков, каждый из которых соответствует выполнению одного или нескольких действий. В блок-схеме каждому типу действий (вводу исходных данных, вычислению значений выражений, проверке условий, управлению повторением действий, окончанию обработки и т.п.) соответствует геометрическая фигура.
Стадии создания алгоритма:
1. Алгоритм должен быть представлен в форме, понятной человеку, который его разрабатывает (определить цель, наметить план действий).
2. Алгоритм должен быть представлен в форме, понятной тому объекту (в том числе и человеку), который будет выполнять описанные в алгоритме действия (выбрать среду и объект алгоритма, детализировать алгоритм).
Объект, который будет выполнять алгоритм, обычно называют исполнителем.
Назначение исполнителя точно выполнить предписания алгоритма, подчас не задумываясь о результате и целях, т.е. формально. Идеальными исполнителями являются машины, роботы, компьютеры.
Компьютер – автоматический исполнитель алгоритмов.
Алгоритм, записанный на «понятном» компьютеру языке программирования, называется программой.
Линейный алгоритм
Линейный алгоритм – описание действий, которые выполняются однократно в заданном порядке. Исполнитель выполняет действия последовательно, одно за другим в том порядке в котором они следуют.
Блок-схема линейного алгоритма:
Циклический алгоритм – описание действий, которые должны повторяться указанное число раз или пока не выполнено заданное условие.
Перечень повторяющихся действий называют телом цикла.
Циклические алгоритмы бывают двух типов:
Циклы со счетчиком, в которых какие-то действия выполняются определенное число раз;
Циклы с условием, в которых тело цикла выполняется, в зависимости от какого-либо условия. Различают циклы с предусловием и постусловием.
Циклы со счетчиком используют когда заранее известно какое число повторений тела цикла необходимо выполнить. Например, на уроке физкультуры вы должны пробежать некоторое количество кругов вокруг стадиона.
Для счетчика от нач. значения до кон. значения выполнить действие.
Часто бывает так, что необходимо повторить тело цикла, но заранее не известно, какое количество раз это надо сделать. В таких случаях количество повторений зависит от некоторого условия. Такие циклы называются циклы с условием. Циклы в которых сначала проверяется условие, а затем, возможно, выполняется тело цикла называют циклы с предусловием. Если условие проверяется после первого выполнения тела цикла, то циклы называются циклы с постусловием.
Например, в субботу вечером вы смотрите телевизор. Время от времени поглядываете на часы и если время меньше полуночи, то продолжаете смотреть телевизор, если это не так, то вы прекращаете просмотр телепередач.
В общем случае схема циклического алгоритма с условием будет выглядеть так:
Пока условие повторять действие.
При составлении циклических алгоритмов важно думать о том, чтобы цикл был конечным. Ситуация, при которой выполнение цикла никогда не заканчивается, называется зацикливанием.
Во многих случаях требуется, чтобы при одних условиях выполнялась одна последовательность действий, а при других – другая.
Если пошел дождь, то надо открыть зонт.
Если прозвенел будильник, то надо вставать.
Если встречу Сашу, то скажу ему …
Если встречу Сашу, то скажу ему …, иначе зайду к нему сам.
Эти предложения начинаются с проверки какого-либо условия: пошел дождь, прозвенел будильник, встретил Сашу… Далее в зависимости мы либо вылиняем какое-либо действие, либо не выполняем его (или выполняем какое-то другое действие).
Компьютер тоже в зависимости от какого-либо условия может выполнять или не выполнять те или иные действия. Алгоритм, в котором используется условие, получил название разветвляющегося, так как в зависимости от значения условия выбираются те или иные действия.
В общем случае схема разветвляющегося алгоритма будет выглядеть так: «если условие, то действие 1, иначе действие 2» (Если встречу Сашу, то скажу ему …, иначе зайду к нему сам.). Так же можно использовать неполную форму: «если условие, то действие» (Если встречу Сашу, то скажу ему ). В этом случае не предусматривается действий на случай невыполнения условия.
Условие – это высказывание которое может быть либо истинно, либо ложно.
Еще раз обратим внимание, что существует две формы ветвления – неполная (когда присутствует только одна ветвь, т.е. в зависимости от истинности условия либо выполняется, либо не выполняется действие) и полная (когда присутствуют две ветви, т.е. в зависимости от истинности условия выполняется либо одно, либо другое действие).
Вспомогательный алгоритм – алгоритм, который можно использовать в других алгоритмах, указав только его имя.
Что такое основной алгоритм вспомогательный алгоритм
Вспомогательный алгоритм – алгоритм, который можно вызвать и использовать в других алгоритмах, указав только его имя.
Вспомогательные алгоритмы создаются, когда возникает необходимость разбиения задачи на ряд более простых задач или когда есть необходимость многократного использования одного и того же набора действий в одном или разных алгоритмах.
Рассмотрим пример, Вы хотите спеть песню, у которой три куплета и припев, исполняемый после каждого куплета. Алгоритм Ваших действий будет следующим:
1. Спеть 1-й куплет.
2. Спеть припев.
3. Спеть 2-й куплет.
4. Спеть припев.
5. Спеть 3-й куплет.
6. Спеть припев.
Действия, объединенные в пункт «спеть припев», трижды повторяются. Таким образом, этот алгоритм содержит набор повторяющихся одинаковых действий и в озникает необходимость многократного использования одного и того же набора действий (алгоритма), следовательно такой набор действий или алгоритм можно выделить в качестве самостоятельного фрагмента. Он становится вспомогательным алгоритмом.
Вспомогательный алгоритм – алгоритм, по которому решается некоторая подзадача из основной задачи и который, как правило, выполняется многократно. Алгоритм может содержать несколько вспомогательных алгоритмов.
Блок-схема вызова вспомогательного алгоритма
Информатика. 10 класс (Повышенный уровень)
§ 7. Понятие вспомогательного алгоритма
7.1. Вспомогательные алгоритмы
Вспомогательный алгоритм — алгоритм, который можно использовать в других алгоритмах, указав его имя и, если необходимо, значения параметров. Вспомогательный алгоритм, записанный на языке программирования, называют подпрограммой.
Основные преимущества использования подпрограмм:
1. Разбиение комплексной программной задачи на простые шаги (декомпозиция). Это позволяет распределить решение одной задачи между различными людьми.
2. Уменьшение повторяющегося кода.
3. Многократное использование кода в других программах, в том числе и другими программистами.
4. Сокрытие деталей реализации от пользователей подпрограммы.
Перед тем как использовать функцию, ее нужно описать. Описание функции включает объявление и определение функции.
Объявление функции (пример 7.1) включает в себя заголовок функции, заканчивающийся точкой с запятой и включающий:
Функции могут быть с параметрами или без параметров. Если функция не имеет параметров, то наличие круглых скобок после имени функции обязательно.
Определение функции состоит из заголовка функции (без точки с запятой) и тела функции, заключенного в фигурные скобки. В нем содержатся команды языка, реализующие вспомогательный алгоритм (пример 7.2).
При вызове функции (пример 7.3) указывается ее имя и параметры, необходимые для вычислений. Эти параметры называют фактическими параметрами.
В описании функции задается список формальных параметров. Каждый параметр, описанный в этом списке, является локальным по отношению к описываемой функции, т. е. на него можно ссылаться по его имени из данной подпрограммы, но не из основной программы или другой функции.
Переменные, значения которых должны быть известны во всех функциях, являются глобальными и описываются до описания функций. Если переменная описана между описаниями функций, то ее значение будет глобальным для всех функций, описанных ниже, но неизвестным для функций, описанных выше.
Необходимость оптимизации программ по объему занимаемой памяти привела к появлению подпрограмм. Подпрограммы позволили не повторять в программе идентичные блоки кода, а описывать их однократно и вызывать по мере необходимости.
Использование подпрограмм позволяет повысить надежность кода программы. Подпрограммы обычно имеют небольшой размер, поэтому найти и исправить в них ошибки проще, нежели в большой программе.
Использование подпрограмм гарантирует относительную автономность модификации программы: если нужно что-либо изменить в программе, переделывать придется не всю программу, а только некоторые подпрограммы.
Пример 7.1. Объявление функций.
int kol _ cifr ( int n );
double plos_treug ( double a, double h );