Нарисуйте на экране диагональ экрана, состоящую из 15 разноцветных правильных заполненных восьмиугольников - Turbo Pascal
Формулировка задачи:
Нарисуйте на экране диагональ экрана, состоящую из 15 разноцветных правильных заполненных восьмиугольников. Составитб блок-схему. Turbo Pascal.
Решение задачи: «Нарисуйте на экране диагональ экрана, состоящую из 15 разноцветных правильных заполненных восьмиугольников»
textual
Листинг программы
uses graph; const n=15; var x,y,r,dx,dy,i,j:integer; u:real; p:array[1..9] of pointtype; begin initgraph(x,y,''); r:=getmaxX div 30; x:=r; dx:=2*r; y:=r; dy:=3*r div 2; for i:=1 to n do begin u:=pi/2; for j:=1 to 9 do begin p[j].x:=x+round(r*cos(u)); p[j].y:=y-round(r*sin(u)); u:=u+pi/4; end; setcolor(i); setfillstyle(1,i); fillpoly(9,p); x:=x+dx; y:=y+dy; end; readln end.
Объяснение кода листинга программы
- Установка начального состояния графической системы с помощью функции initgraph(x,y,'').
- Задание размеров восьмиугольника r, которые будут использоваться в дальнейшем.
- Создание массива p для хранения координат вершин восьмиугольника.
- Заполнение массива p координатами вершин восьмиугольника с помощью внутреннего цикла.
- Установка цвета заливки в текущий цвет с помощью функции setcolor(i).
- Установка стиля заливки в сплошной с помощью функции setfillstyle(1,i).
- Отрисовка восьмиугольника с помощью функции fillpoly(9,p).
- Изменение координат начала следующего восьмиугольника с помощью переменных x и y.
- Изменение размера следующего восьмиугольника с помощью переменных dx и dy.
- Повторение шагов 4-9 для каждого из 15 восьмиугольников.
- Чтение строки с помощью функции readln.
- Завершение работы программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д