Решение задачи необходимо оформить в виде процедуры-функции с заголовком
function Draw(a,b: Integer): Boolean;
которая выводит на экран заданную фигуру. Функция должна быть описана в составе программы-драйвера для её тестирования. Использование в функции глобальных переменных и операций ввода данных не допускается.
Размеры a и b - это целочисленные параметры задачи. Следует учесть, что в вариантах 1..12 размеры a и b даны без учёта уголковых элементов, т.е. это фактически количество одинаковых элементов псевдографики вдоль соответствующего отрезка. Функция Draw должна возвращать логическое значение свидетельствующее о корректности входных данных - размеры изображения не должны выходить за заданные границы.
Варианты индивидуальных заданий:
1. См. Рис. 1).
2. См. Рис. 2).
и т.д.
13. При тех же общих условиях "нарисовать"
прямоугольник с закрашенными малыми
прямоугольниками, расположенными в шахматном
порядке. Размеры прямоугольников соответственно
(k*a) на (k*b) и a на b, где a, b и k - целочисленные входные
параметры.
Рекомендация. Для "рисования" фигуры целесообразно в процедуре Draw объявить двумерный литерный массив C достаточно большого размера, например, 20 на 20. В ходе выполнения процедуры его необходимо очистить (заполнить пробелами), а потом заполнять, используя операторы вида C[i,j] := Chr(Code). Для формирования линейных участков фигуры целесообразно использовать циклы. Фигуру надо расположить в левом верхнем углу массива C. После заполнения массива его остаётся вывести на экран монитора. При этом строки, которые не содержат элементов изображения, выводить не надо.
Copyright г Барков Валерий Андреевич, 2000