Помогите с паскалем - Вопросы по Pascal

Вопрос Помогите с паскалем

Регистрация
1 Ноя 2013
Сообщения
77
Репутация
-3
Спасибо
0
Монет
0
кто может написать код для паскаля абс с использованием графа абс, чтобы он нарисовал какую-нибудь красивую разноцветную картинку? для домашки надо
 
Регистрация
21 Дек 2013
Сообщения
89
Репутация
0
Спасибо
0
Монет
0
Как такой вариант? Uses GraphABC;

Begin
SetWindowTitle('Разноцветная картинка');
SetWindowSize(600, 400);

For i := 0 To WindowWidth Do
Begin
r := Round(255 * i / WindowWidth);
g := Round(128 * (WindowWidth - i) / WindowWidth);
b := 0;
SetColorRGB(r, g, b);
Line(i, 0, i, WindowHeight);
End;

For i := 1 To 10 Do
Begin
x := Random(WindowWidth);
y := Random(WindowHeight);
radius := Random(50) + 20;
r := Random(256);
g := Random(256);
b := Random(256);
SetColorRGB(r, g, b);
Circle(x, y, radius);
End;

For i := 1 To 5 Do
Begin
x := Random(WindowWidth);
y := Random(WindowHeight);
side := Random(80) + 20;
r := Random(256);
g := Random(256);
b := Random(256);
SetColorRGB(r, g, b);
Rectangle(x, y, x + side, y + side);
End;

ReadKey;
End.
 
Регистрация
19 Ноя 2012
Сообщения
75
Репутация
0
Спасибо
0
Монет
0
uses GraphABC;

procedure DrawSpiral;
var
angle, radius: Real;
x, y, i: Integer;
colors: array[1..7] of Color;
begin
// Задаем цвета
colors[1] := clRed;
colors[2] := clOrange;
colors[3] := clYellow;
colors[4] := clGreen;
colors[5] := clBlue;
colors[6] := clIndigo;
colors[7] := clViolet;

// Устанавливаем начальные значения
angle := 0;
radius := 0;

// Рисуем спираль
for i := 1 to 1000 do
begin
x := Round(200 + radius * Cos(angle));
y := Round(200 + radius * Sin(angle));

SetPixel(x, y, colors[i mod 7 + 1]);

// Увеличиваем угол и радиус
angle := angle + 0.1;
radius := radius + 0.1;
end;
end;

begin
// Устанавливаем размер окна
SetWindowSize(400, 400);

// Вызов процедуры рисования спирали
DrawSpiral;

// Ожидание закрытия окна
ReadLn;
end.
 
Регистрация
16 Дек 2013
Сообщения
100
Репутация
1
Спасибо
0
Монет
0
uses GraphABC;

procedure DrawColorfulSpiral;
var
x, y: Integer;
angle, radius: Real;
i, colorStep: Integer;
begin
// Установим размеры окна
Window.SetSize(800, 600);
Window.CenterOnScreen;

// Центр экрана
x := Window.Width div 2;
y := Window.Height div 2;

// Начальные значения
angle := 0;
radius := 5;
colorStep := 1;

// Цикл для рисования спирали
for i := 1 to 360 * 4 do
begin
// Установка цвета, постепенно изменяющегося по кругу
SetPenColor(RGB((i * colorStep) mod 256, (i * colorStep * 2) mod 256, (i * colorStep * 3) mod 256));

// Вычисление новых координат
x := Round(Window.Width div 2 + radius * Cos(angle));
y := Round(Window.Height div 2 + radius * Sin(angle));

// Рисуем линию до новых координат
LineTo(x, y);

// Увеличение угла и радиуса
angle := angle + 0.1;
radius := radius + 0.1;
end;
end;

begin
// Вызов процедуры рисования спирали
DrawColorfulSpiral;
// Ожидание нажатия клавиши перед закрытием окна
Readln;
end.
Программа проверялась на PascalABCNET
 
Сверху Снизу