Нарисовать шахматную доску 6*6 на весь экран - Turbo Pascal

Узнай цену своей работы

Формулировка задачи:

Помогите написать программу: Нужно нарисовать шахматную доску 6*6 ( НА ВЕСЬ ЭКРАН!!! ) Заранее спасибо =)

Решение задачи: «Нарисовать шахматную доску 6*6 на весь экран»

textual
Листинг программы
uses crt,graph;
procedure Kletka(x1,y1,c:integer;d:integer);{рисуем клетки}
begin
Setcolor(c);{цвет}
rectangle(x1,y1,x1+d,y1+d);{граница}
Setfillstyle(1,c);{стиль заполнения}
Bar(x1,y1,x1+d,y1+d);{заполняем}
end;
var gd,gm,x1,y1,x2,y2,d1,i,j:integer;
begin
initgraph(gd,gm,'');{переход в граф. режим, тут еще проверку надо}
d1:=round((getmaxY-60)/6);{размер клеток}
Setcolor(4);
Rectangle(1,1,6*d1+50,6*d1+60);
Setfillstyle(1,4);
Bar(1,1,6*d1+50,6*d1+60);{рамка доски}
x1:=30;y1:=20;{левый верхний угол клетки а6}
for i:=0 to 5 do
  begin
    for j:=0 to 5 do
    if odd(i+j) then Kletka(x1+d1*i,y1+d1*j,15,d1){если сумма индексов нечетная, цвет белый}
    else Kletka(x1+d1*i,y1+d1*j,6,d1);{если четная, коричневый}
  end;
Setcolor(0);
for i:=0 to 5 do
outtextxy(30+d1*i+d1 div 2,460,chr(ord(i+97)));{выводим написи по горизонтали(буквы)}
for i:=5 downto 0 do
outtextxy(20,440-d1*i-d1 div 2,chr(ord(i+49)));{по вертикали-цифры}
readln;
closegraph
end.

Объяснение кода листинга программы

  1. В начале кода используются две библиотеки: crt (для работы с консолью) и graph (для работы с графикой).
  2. Процедура Kletka принимает четыре параметра: x1, y1, c (цвет) и d (размер клетки). Она рисует клетку заданного цвета и размера на указанной позиции.
  3. Переменные gd и gm используются для работы с графическим режимом.
  4. Переменные x1, y1, x2, y2 и d1 используются для работы с координатами и размером клеток.
  5. Переменная i используется для итерации по горизонтальным строкам, а переменная j - для итерации по вертикальным столбцам.
  6. Цикл for i:=0 to 5 do используется для вывода букв на горизонтальные строки. Каждая буква представлена символом, соответствующим букве английского алфавита (i+97).
  7. Цикл for i:=5 downto 0 do используется для вывода цифр на вертикальные столбцы. Каждая цифра представлена символом, соответствующим цифре (i+49).
  8. Функция ord(i+97) используется для получения числового значения символа (буквы).
  9. Функция chr(ord(i+97)) используется для получения символьного значения числового значения символа (буквы).
  10. Функция outtextxy(x,y) используется для вывода текста на указанную позицию.
  11. Функция readln используется для чтения ввода пользователя.
  12. Функция closegraph используется для выхода из графического режима и закрытия графика.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 4.2 из 5
Похожие ответы