Алгоритмы в КуМире — это очерёдность выполнения операций для разрешения поставленной задачи в КуМире.
Введение
Иногда, чтобы сделать проще разрешение поставленной задачи, она разбивается на менее сложные и более простые при написании программ элементы, то есть подзадачи. Алгоритмы для разрешения подзадачи в КуМире называют вспомогательными (они же – подчинённые). Использование метода вспомогательного алгоритма в Кумире обладает целым рядом достоинств:
- В сформированном приложении не будет многочисленных повторений одного и того же кода.
- Однажды разработанный алгоритм может применяться в других программах.
- Структурное оформление программного продукта станет наиболее понятным.
- Существенно упрощается процедура проверки и отладки программы.
Сдай на права пока
учишься в ВУЗе
Вся теория в удобном приложении. Выбери инструктора и начни заниматься!
В языке программирования КуМир вспомогательные алгоритмы, как и подпрограммы, например, в Паскале, можно разделить на функциональные и процедурные.
1 урок. КуМир. Первая программа для исполнителя Робот
Процедурные алгоритмы
Форму представления процедурного алгоритма, возможно отобразить таким образом:
- aлг наименование алгоритма (представление параметров);
- нaч;
- набор кoмaнд;
- кoн.
Параметры вспомогательного алгоритма (при их наличии) принято называть фактическими. Они описываются внутри скобок вслед за именем алгоритма. Там отображается информационные данные о виде параметров и об их происхождении, то есть это аргументы или результаты:
- aрг – описываются параметры-аргументы;
- рeз – описываются параметры, являющиеся результатами;
- aргрeз (или apг рeз) – описываются параметры, которые могут быть и аргументами, и результатами.
Процедурный алгоритм возможно вызвать как из главного, так и из вспомогательного алгоритма. Чтобы обратиться к процедурному алгоритму, применяется специальная команда вызова, которая имеет такой формат:
- имя алгоритма (формализованные параметры).
- цeл num, S
- ввoд num
- CЦДЧ (num, S)
- вывoд S.
Функциональные алгоритмы
Функциональные алгоритмы (алгоритмы – функции) по завершению своей работы возвращают итоговый результат. Правила написания алгоритмов – функций и алгоритмов – процедур отличаются двумя особенностями:
- В алгоритме – функции в графе для отображения типовой принадлежности алгоритма указывается простой вид языка алгоритмов (вещ, цел и так далее), который определяет в каком виде эта функция делает возврат значений.
- В алгоритме – функции следует применять термин знач, которому даётся найденное значение функции.
Источник: spravochnick.ru
Алгоритм-процедура в Кумире
Часто для упрощения решения исходной задачи, ее разбивают на подзадачи — более простые, с точки зрения программирования, части. Алгоритмы, в которых решаются подзадачи, в языке Кумир называются вспомогательными (или подчиненными) алгоритмами .
Работа в программе Кумир
Применение вспомогательных алгоритмов в программировании дает ряд преимуществ:
- удается избежать многократно повторяемого кода в программе;
- созданный ранее алгоритм можно использовать при построении других алгоритмов;
- структура программы становится более понятной;
- оказывается более простым процесс отладки программы.
В Кумире вспомогательные алгоритмы, подобно подпрограммам в языке Паскаль, делятся на алгоритмы-функции и алгоритмы-процедуры.
Алгоритмы-процедуры
Формат описания алгоритма-процедуры в общем виде можно представить в следующем виде:
- алг имя алгоритма ( описание параметров )
- нач
- последовательность команд
- кон
Параметры вспомогательного алгоритма (если они есть) называются фактическими. Их описание происходит в круглых скобках после имени алгоритма. Описание включает в себя информацию о типах параметров и о том, чем они являются — аргументами или результатами:
- арг – описания параметров-аргументов;
- рез – описания параметров-результатов;
- аргрез (или арг рез ) – описания параметров, являющихся одновременно и аргументами, и результатами.
Рассмотрим пример вспомогательного алгоритма определения суммы цифр целого двухзначного числа ( СЦДЧ ):
- алг СЦДЧ (арг цел num, рез цел S)
- нач
- S := div (num, 10 ) + mod (num, 10 )
- кон
В заголовке алгоритме СЦДЧ описывается два параметра: первый — параметр-аргумент, принимающий число, сумму цифр которого нужно определить, второй — параметр-результат, принимающий искомую сумму.
Команда вызова алгоритма-процедуры
Алгоритм-процедура может быть вызван как из основного, так и из вспомогательного алгоритма. Для обращения к алгоритму-процедуре используется команда вызова, имеющая следующий вид:
- имя алгоритма ( параметры вызова )
Параметры вызова (если они есть) называются формальными параметрами .
Параметры вызова представляют собой необходимые для работы вспомогательного алгоритма данные. Между формальными параметрами в команде вызова и фактическими параметрами в заголовке алгоритма должно быть соответствие, которое определяется порядком их следования. Параметры должны быть согласованы между собой, в том числе по типам величин.
Так, алгоритм, в котором содержится команда вызова алгоритма СЦДЧ может выглядеть, например, следующим образом:
- цел num, S
- ввод num
- СЦДЧ (num, S)
- вывод S
Источник: informatics-lesson.ru
Уроки 40 — 41
§33. Линейные алгоритмы
Как вы знаете, компьютеры были изобретены для того, чтобы ускорить вычисления. Посмотрим, как решать простую вычислительную задачу в системе КуМир.
Задача. Сколько километров проехал автомобиль за 2 часа, если его средняя скорость равна 60 км/ч?
Конечно, одну такую задачу несложно решить устно или на калькуляторе, но для быстрого решения большого количества задач одного типа с разными исходными данными лучше разработать компьютерную программу. Для этого алгоритм решения нужно записать «в буквах». Обозначим время через t, а скорость — через v.
Результат — пройденное расстояние — обозначим буквой S. Программа должна вычислить результат по исходным данным (рис. 6.14).
Рис. 6.14
Алгоритм решения задачи можно записать так:
Вход: v, t.
Шаг 1. S := v • t..
Результат: S..
Здесь нет ни одной команды перехода, которая направляет исполнителя на другой шаг. Поэтому порядок действий всегда одинаковый, какие бы исходные данные мы ни вводили.
Теперь остаётся оформить программу так, чтобы её можно было выполнить в системе КуМир.
Она может выглядеть, например, так:
алг Путь
вещ v, t, S
вывод «Введите скорость: «
вывод «Введите время: «
вывод «Расстояние: «, S
Обратите внимание, что здесь нет никаких чисел, программа решает задачу «в буквах». Буквами (точнее, именами, которые могут состоять из нескольких сиимволов) обозначены изменяемые величины — переменные.
объявляет переменные, т. е. сообщает компьютеру, что мы будем использовать переменные с именами v, t и s. Все они — вещественные, т. е. могут принимать не только целые, но и дробные значения, об этом говорит слово вещ в начале строки.
Команда вывод выводит данные в поле ввода и вывода программы (в нижней части окна). Это может быть просто строка символов, например
вывод «Введите скорость: «
или список того, что нужно вывести:
вывод «Расстояние: «, S
Здесь в списке два элемента: текст «Расстояние» и значение переменной величины s, они разделены запятой.
С помощью команды ввод пользователь (человек, работающий с программой) вводит исходные данные — скорость и время. Например, после вывода сообщения «Введите скорость: » компьютер выполняет команду
Она означает «ждать, когда пользователь введёт число, присвоить это число переменной v». В поле ввода и вывода мигает курсор — это означает, что нужно ввести число и нажать клавишу Enter.
Следующая страница Выводы. Интеллект-карта
Cкачать материалы урока
Источник: xn—-7sbbfb7a7aej.xn--p1ai