Л.р. 2 Алгоритмы с аргументами. Вспомогательный алгоритм с аргументами в цикле
Если алгоритм не имеет параметров (аргументов и результатов), то в строке алг записывается только имя алгоритма.
Если у алгоритма есть параметры, то их описание заключается в круглые скобки после имени алгоритма в строке алг. Описание содержит информацию о типах параметров и о том, являются они аргументами или результатами:
∙ арг — описания параметров-аргументов;
∙ рез — описания параметров-результатов;
∙ аргрез (или арг рез) — описания параметров, которые одновременно являются и аргументами, и результатами.
После каждого из служебных слов арг, рез, аргрез должно располагаться одно или несколько описаний одной или нескольких величин. Имена величин и описания разделяются запятыми. Если в начале описания нет служебных слов арг, рез, аргрез, то предполагается, что первыми идут описания аргументов (арг).
Пример.
алг
нач
· вещ число
· цел целое, сотые
· лит запись
· число := 3.14
· тест(целое, сотые, запись, число)
кон
алг тест (рез цел m, n, лит т, арг вещ y)
нач
· вещ r
· m := int(y)
· r := (y - m)*100
4
· n := int(r)
· т := вещ_в_лит(y)
кон
В заголовке алгоритма алг тест (рез цел m, n, лит т, арг вещ y) служебное слово рез относится к описаниям цел m, n и лит т, а параметр вещ y будет аргументом.
ВНИМАНИЕ: Запрещается писать в теле алгоритма команды, изменяющие значения параметров-аргументов (описанных как арг). Результаты алгоритма (рез, но не аргрез) в начале выполнения алгоритма принимают неопределенные значения.
Задание 1.
Напишите алгоритм с аргументами для рисования фигуры, изображенной на рисунке. В качестве аргументов выступают размеры фигуры, указанные на рисунке 1.
Программа и результат представлены на рисунке 2.
Рисунок 1.
Рисунок 2.
Задание 2.
Начертите фигуру, изображенную на рисунке 3, используя вспомогательный алгоритм с аргументами для рисования отдельного элемента. Количество повторений витков спирали задается пользователем.
Программа представлена на рисунке 4. Результат на рисунке 5.
Рисунок 3.
Рисунок 4.
Рисунок 5.