
Ребята срочно ВИРУЧАЙЕ рисунок в паскале абс с помощу for ДОМ ЛИБО СВЕТОФОР ИЛИ ЖЕ ВАШ
ВАРИАНТ,заранее спасибо

Ответы на вопрос

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.



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.



Привет! Я могу помочь тебе создать рисунок на языке Pascal с помощью цикла for. Однако, я немного запутался в том, какой именно рисунок ты хочешь получить.
Если тебе нужен рисунок дома, то вот пример кода:
arduinoprogram drawHouse;
uses crt;
var
i, j : integer;
begin
for i := 1 to 5 do
begin
for j := 1 to i+4 do
begin
if (j = i+2) or (j = 9-i) then
write('*')
else if (i = 5) and (j >= 4) and (j <= 6) then
write('*')
else
write(' ');
end;
writeln;
end;
for i := 1 to 5 do
begin
for j := 1 to 7 do
begin
if (j = 1) or (j = 7) or (i = 5) then
write('*')
else
write(' ');
end;
writeln;
end;
readln;
end.
Если же тебе нужен рисунок светофора, то вот код:
cssprogram drawTrafficLight;
uses crt;
var
i : integer;
begin
for i := 1 to 9 do
begin
if i = 5 then
writeln('******')
else if (i = 2) or (i = 8) then
writeln(' * ')
else
writeln(' ');
end;
readln;
end.
Надеюсь, что один из этих примеров подойдет для тебя. Если у тебя есть более конкретные требования, то пожалуйста, уточни их, и я постараюсь помочь тебе дальше.


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