Выведите ряд квадратов, закрашенных всеми цветами по порядку - PascalABC.NET
Формулировка задачи:
Выведите ряд квадратов, закрашенных всеми цветами по порядку: Скриншот во вложении
Решение задачи: «Выведите ряд квадратов, закрашенных всеми цветами по порядку»
textual
Листинг программы
uses GraphABC; var x,dx,i:integer; c:array of color=(clBlack,clBlue,clGreen,clCyan,clRed,clMagenta,clBrown, clLightGray,clGray,clLightBlue,clLime, clAquamarine,clYellow,clWhite);//какие надо цвета и в каком порядке так и впишите begin SetBrushColor(clBlack); FillRect(0,0,WindowWidth,WindowHeight); SetPenColor(clWhite); dx:=WindowWidth div Length(c); for i:=0 to Length(c)-1 do begin SetBrushColor(c[i]); Rectangle(x,WindowHeight div 2-dx div 2,x+dx,WindowHeight div 2+dx div 2); FloodFill(x+5,WindowHeight div 2,c[i]); x:=x+dx; end; end.
Объяснение кода листинга программы
- Объявлены переменные: x, dx, i (целые числа), c (массив цветов).
- Установлен цвет кисти на черный и залита вся поверхность окна.
- Установлен цвет пера на белый.
- Рассчитана ширина прямоугольника (dx) для каждого цвета в массиве c, она равна размеру окна, деленному на длину массива c.
- В цикле от 0 до Length(c)-1 выполняется следующее:
5.1. Установлен цвет кисти на текущий цвет из массива c.
5.2. Нарисован прямоугольник с координатами (x, WindowHeight/2 - dx/2, x+dx, WindowHeight/2 + dx/2).
5.3. Залита область вокруг прямоугольника с использованием текущего цвета.
- Увеличено значение x на dx.
- Код завершается.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д