Изобразить цветной шум - Pascal ABC

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

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

Составьте программу выводящую на экран картинку:

Указание.

Координаты (а,b) точки, лежащей выше главной диагонали, удовлетворяют условию a>b

Решение задачи: «Изобразить цветной шум»

textual
Листинг программы
uses graphABC;
var i,x,y:integer;
begin
randomize;
//вообще нужно
//clearwindow(clBlack);
//но у меня в простом АС это часто не срабатывает
setbrushcolor(clBlack);
rectangle(0,0,windowwidth,windowheight);
for i:=1 to 20000 do
 begin
  x:=1+random(windowwidth);
  y:=1+random(windowheight);
  if (x<=windowheight)and(y<=x) then setpixel(x,y,clGreen)
  else if (x<=windowheight)and(y>x) then setpixel(x,y,clRed)
  else setpixel(x,y,clYellow)
 end;
end.

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

  1. В первой строке используется библиотека graphABC, которая, вероятно, предоставляет функции для работы с графиками.
  2. Переменные i, x и y являются целыми числами.
  3. Функция randomize вызывается для разброса случайных чисел, что важно для генерации шума.
  4. С помощью функции clearwindow(clBlack) предполагается очистить окно графика от предыдущих данных, но это может не работать в некоторых средах программирования.
  5. С помощью функции setbrushcolor(clBlack) устанавливается цвет кисти на черный.
  6. С помощью функции rectangle(0,0,windowwidth,windowheight) рисуется прямоугольник, занимающий всю область окна графика.
  7. Затем следует цикл for, который выполняется 20000 раз.
  8. Внутри цикла переменные x и y инициализируются случайными числами в пределах высоты и ширины окна графика.
  9. Затем проверяется условие (x<=windowheight)and(y<=x), которое означает, что точка (x, y) находится внутри прямоугольника, ограниченного верхним и нижним краями окна графика и линией, соединяющей верхний и нижний края.
  10. Если условие истинно, то с помощью функции setpixel(x,y,clGreen) устанавливается цвет пикселя (x, y) на зеленый.
  11. Если условие ложно, но x меньше y, то с помощью функции setpixel(x,y,clRed) устанавливается цвет пикселя (x, y) на красный.
  12. Если условие ложно и y больше x, то с помощью функции setpixel(x,y,clYellow) устанавливается цвет пикселя (x, y) на желтый.
  13. Цикл for завершается после 20000 итераций.
  14. В конце кода предполагается, что все пиксели окна графика были установлены в зеленый, красный или желтый цвета.

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


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

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

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