Нарисовать в разных местах экрана пятиугольник, закрашенный сектор эллипса, ромб, куб - Pascal ABC

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

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

1)Нарисовать в разных местах экрана пятиугольник, закрашенный сектор эллипса, ромб, куб. С помощью графических примитивов нарисовать рекламу. 2) Линия вращается вокруг одной из своих точек. Цвет линии должен меняться через различные промежутки времени. При каждом повторном запуске длина прямой и точка, вокруг которой она вращается, должны варьироваться случайно. 3) Нарисовать автомобили, которые двиг. по экрану. Колеса автомоблей крутятся. Кому не трудно помогите!..завал немного) Заренее Спасибо!

Решение задачи: «Нарисовать в разных местах экрана пятиугольник, закрашенный сектор эллипса, ромб, куб»

textual
Листинг программы
uses graphABC,crt;
const a: array [1..5] of integer =(clred,clblue,clgreen,clpurple,clgray);
var i,j:integer;
    uu: integer;
 
procedure Koleso(xk1,yk1,xk2,yk2,uu: integer);
var r,i:integer;
    u:real;
begin
r:=15;u:=uu;
setbrushcolor(clblack);
circle(xk1,yk1,r+10);
circle(xk2,yk2,r+10);
setbrushcolor(clwhite);
circle(xk1,yk1,r);
circle(xk2,yk2,r);
for i:=1 to 4 do
    begin
    line(xk1,yk1,xk1+round(r*cos(u)),yk1-round(r*sin(u)));
    line(xk2,yk2,xk2+round(r*cos(u)),yk2-round(r*sin(u)));
    u:=u+(pi/2);
    end;
end;
 
procedure Auto(j: integer);
var xk1,yk1,xk2,yk2,x,y: integer;
begin
uu:=0;
for x:=-200 to 1100 do
    begin
    clearwindow;
    setpenwidth(3);
    setpencolor(j);
    setbrushcolor(j);
    rectangle(x-150,400,x+150,450);
    setbrushcolor(clwhite);
    rectangle(x-80,350,x+50,400);
    line(x-80,350,x-130,400);
    line(x+50,350,x+100,400);
    line(x-15,350,x-15,400);
    xk1:=x-100; xk2:=x+100;
    yk1:=450; yk2:=450;
    setpencolor(clblack);
    Koleso(xk1,yk1,xk2,yk2,uu);
    sleep(1);
    redraw;
    uu:=uu-5;
    end;
end;
 
 
begin
lockdrawing;
hidecursor;
setwindowsize(900,600);
repeat
uu:=0; j:=random(5)+1;
Auto(a[j]);
until keypressed;
end.

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

  1. Объявлены константы и переменные:
    • a: массив из пяти целочисленных значений, представляющих цвета (например, clred - красный цвет).
    • i, j: целочисленные переменные для использования в циклах.
    • uu: целочисленная переменная для хранения значения, используемого в процедуре Koleso.
  2. Определена процедура Koleso, которая рисует два колеса (каждое из которых состоит из пяти сегментов, образующих форму пятиугольника), используя заданные координаты и цвет.
  3. Определена процедура Auto, которая рисует раму вокруг экрана и в его пределах рисует пятиугольник с обводкой и заливкой, используя заданный цвет.
  4. В основном блоке кода используется цикл repeat-until для запуска автоматического рисования с случайным интервалом, пока не будет нажата клавиша.
  5. В начале каждого интервала переменная uu сбрасывается до нуля, а затем выбирается случайный цвет из массива a.
  6. Значение переменной j используется в качестве индекса для выбора цвета из массива a.
  7. Во время каждого интервала рисования вызывается процедура Auto с выбранным цветом и случайными координатами для пятиугольника.
  8. Код завершается, когда нажата клавиша.

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


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

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

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