|
КружеваУзор, показанный на рисунке ниже, образован следующим образом. На экране строятся вершины правильного 18-угольника, центр которого совпадает с центром экрана. Каждая из восемнадцати вершин соединяется отрезками со всеми другими вершинами. В программе координаты вершин многоугольника (по оси х и по оси у) удобно хранить в двух массивах. Размер этих массивов (который совпадает с числом вершин многоугольника) можно задать в виде глобальной константы, а заполнить их можно, используя значения синуса и косинуса. Соответствующая программа на школьном алгоритмическом языке имеет вид: цел n |Глобальная константа n := 18 алг Кружева нач цел таб x[1:n], y[1:n], цел расст, i, j |Устанавливаем графический режим видео(18) расст := 200 |Расстояние от центра фигуры до ее вершин |Заполняем массивы х и у нц для i от 1 до n x[i] := цел(максХ/2 + расст * cos(6.28/n * i)) y[i] := цел(максY/2 + расст * sin(6.28/n * i)) кц |Каждую вершину n-угольника нц для i от 1 до n |соединяем со всеми другими вершинами нц для j от 1 до n поз(x[i], y[i]) линия(x[j], y[j]) кц кц кон Примечания 1. Функции максХ и максУ в школьном алгоритмическом языке возвращают соответственно максимальное значение координат х и у в выбранном режиме работы экрана. 2. Функция цел возвращает целую часть ее вещественного аргумента. Измените количество вершин, и вы увидите, как изменится узор. |