Изобразить шахматную доску - Pascal ABC (19001)
Формулировка задачи:
помогите сделать шахматную доску 400 рикселей на 400,но нужно что бы параллельные полосы были заключены в цикл и через for их сделать
Решение задачи: «Изобразить шахматную доску»
textual
Листинг программы
uses graphABC; procedure Kletka(x1,y1,c:integer;d:integer); begin Setpencolor(c); Setbrushcolor(c); rectangle(x1,y1,x1+d,y1+d); end; var x,y,d,i,j:integer; begin setwindowsize(420,420); d:=50; x:=10; y:=10; for i:=1 to 8 do begin for j:=1 to 8 do if odd(i+j) then Kletka(x+d*(i-1),y+d*(j-1),clBlack,d) else Kletka(x+d*(i-1),y+d*(j-1),clWhite,d); end; setpencolor(clBlack); setbrushstyle(bsClear); rectangle(x,y,x+400,y+400) end.
Объяснение кода листинга программы
- Объявлены переменные: x, y, d, i, j (строки 7-11)
- Заданы размеры окна (строка 13)
- Задано значение переменной d (строка 14)
- Задано значение переменной x (строка 15)
- Задано значение переменной y (строка 16)
- Запущен цикл по i от 1 до 8 (включительно) (строка 17)
- Внутри цикла по i запущен цикл по j от 1 до 8 (включительно) (строка 18)
- Внутри двойного цикла проверяется условие odd(i+j) (строка 19)
- Если условие odd(i+j) выполняется, то вызывается процедура Kletka с соответствующими аргументами (строка 20)
- Если условие odd(i+j) не выполняется, то вызывается процедура Kletka с другими аргументами (строка 21)
- По завершении двойного цикла выполняется единичный цикл для рисования рамок (строка 22)
- Устанавливаются цвета кисти и пера (строка 23)
- Рисуется прямоугольник, соответствующий размерам окна (строка 24)
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д