В
Все
М
Математика
О
ОБЖ
У
Українська мова
Д
Другие предметы
Х
Химия
М
Музыка
Н
Немецкий язык
Б
Беларуская мова
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
Р
Русский язык
У
Українська література
Ф
Французский язык
П
Психология
А
Алгебра
О
Обществознание
М
МХК
В
Видео-ответы
Г
География
П
Право
Г
Геометрия
А
Английский язык
И
Информатика
Қ
Қазақ тiлi
Л
Литература
И
История
муслима18
муслима18
03.11.2021 00:19 •  Информатика

Виручайе рисунок в паскале абс с for дом либо светофор или же ваш вариант,заранее

Показать ответ
Ответ:
Roth999
Roth999
27.08.2020 12:12

uses

 GraphABC;

const

 S = 14; // Кол-во щупалец

 N = 18;  // Кол-во звеньев в каждом из них

 W = 2; //Ширина щупалец

var

 i, j: Integer;

 x, y: Real;

 tx, ty: Real;

 k, d: Real;

 

 // Углы поворота звеньев относительно друг-друга

 a: array [1..N] of Real;

 

 // Длина одного звена

 len: Real;

begin

 Pen.Width := W;

 SetWindowSize(320, 320);

 SetWindowTitle('Щупальца');

 

 if Window.Width > Window.Height then

   len := Window.Height / 1.8 / N

 else

   len := Window.Width / 1.8 / N;

 k := random(360) * pi / 180;

 d := pi * 2 / S;

 

 var k1 := 1;

 

 // Главный цикл

 repeat

   

   if Window.Width > Window.Height then

     len := Window.Height / 1.8 / N

   else

     len := Window.Width / 1.8 / N;

   

   LockDrawing(); //Блокируем рисование(для оптимизации)

   ClearWindow(ClBlack); // Стираем всё

   

   // Расчёт коэфицента поворота

   if random(50) = 0 then

     k := random(360) * pi / 180;

   

   // Поворот всех щупалец

   a[1] := a[1] + sin(k) / 15;

   // Интерполяция углов между щупальцами

   for i := 2 to N do  

     a[i] := a[i] + (a[i - 1] - a[i]) * 0.1;

   for j := 0 to S - 1 do

   begin

     x := 0.5 * Window.Width;

     y := 0.5 * Window.Height;

     for i := 2 to N do  

     begin

       SetPenColor(Color.FromArgb(255, trunc(255 - 255 * i / N), 255));

       

       // Немного школьной тригонометрии :)            

       tx := x + cos(j * d + a[i]) * len;

       ty := y + sin(j * d + a[i]) * len;

       Line(trunc(x), trunc(y), trunc(tx), trunc(ty));

       x  := tx;

       y  := ty;

     end;

   end;

   Redraw(); //Перерисуем изображение

   k1 += 1;

   SetWindowTitle('Щупальца( Средн. FPS ' + Format('{0,5:f2}',k1/Milliseconds*1000)+')');

   

   sleep(5);

 until false;

 

end.

0,0(0 оценок)
Ответ:
Lena89269295717
Lena89269295717
27.08.2020 12:12

uses graphabc;

var i,d,v: integer;

begin

for i:=1 to 7 do

begin

SetPenWidth(5);

setbrushcolor (clRandom);

Rectangle(40+d,380-v,600-d,437-v);

d:=d+40;

v:=v+57;

end

end.

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота