Нарисовать квадрат, который постоянно менянт цвет - Turbo Pascal

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

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

Нарисовать квадрат , который постоянно менянт цвет а когда нажимаешь любую клавишу прекращает.

Решение задачи: «Нарисовать квадрат, который постоянно менянт цвет»

textual
Листинг программы
  1. uses graph,crt;
  2. var x,y,a,i:integer;
  3. begin
  4. randomize;
  5. initgraph(x,y,'');
  6. x:=getmaxX div 2;
  7. y:=getmaxY div 2;
  8. a:=y div 2;
  9. outtextXY(x-100,10,'Stop any key(no Enter)');
  10. repeat
  11. i:=2+random(14);
  12. setfillstyle(1,i);
  13. setcolor(i);
  14. bar(x-a,y-a,x+a,y+a);
  15. delay(500);
  16. until keypressed;
  17. cleardevice;
  18. setcolor(15);
  19. outtextXY(x-50,y,'Press Enter');
  20. readln
  21. end.

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

  1. В начале кода подключаются необходимые библиотеки graph и crt.
  2. Переменные x, y, a и i объявляются как целочисленные.
  3. Функция randomize вызывается для инициализации генератора случайных чисел.
  4. Функция initgraph(x, y, ``) вызывается для инициализации графического окна, где x и y - координаты верхнего левого угла окна, а пустая строка - название графического окна.
  5. Переменная x вычисляется как половина максимальной x-координаты.
  6. Переменная y вычисляется как половина максимальной y-координаты.
  7. Переменная a вычисляется как y делить на 2.
  8. С помощью функции outtextXY(x-100,10,'Stop any key(no Enter)') выводится текст в верхней левой части окна, который предупреждает пользователя о необходимости нажатия любой клавиши, кроме Enter.
  9. В цикле repeat...until выполняется следующая последовательность действий:
    • Переменная i инициализируется значением 2+random(14), что генерирует случайное число от 2 до 17.
    • С помощью функции setfillstyle(1,i) устанавливается стиль заполнения барами на 1 (т.е. сплошной цвет) и цвет i (который был случайно сгенерирован).
    • С помощью функции setcolor(i) устанавливается цвет барок на i (который был случайно сгенерирован).
    • Функция bar(x-a,y-a,x+a,y+a) рисует прямоугольник между координатами (x-a,y-a) и (x+a,y+a).
    • С помощью функции delay(500) задерживается выполнение программы на 500 миллисекунд.
  10. После завершения цикла keypressed? выводится сообщение 'Press Enter' с помощью функции outtextXY(x-50,y,'Press Enter') и функция readln() вызывается для чтения ввода пользователя.

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


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

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

10   голосов , оценка 4.3 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы