Л.р. 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.