PDA

Показать полную графическую версию : Помогите перевести код с Pascal в С++


Nice way
25-04-2015, 15:23
program FracSierp;
uses CRT, Graph;
var
gd, gm : Integer;
procedure draw;
const iter = 50000;
var
t, x, y, p : Real;
k : LongInt;
mx, my, rad : Integer;
begin
mx := 320;
my := 479;
rad := my;
Randomize;
x := 0.0;
y := 0.0;
for k := 1 to iter do
begin
p := Random;
t := x;
if p >= 1/3 then
begin
x := 0.50 * x + 0.00 * y + 0.0;
y := 0.00 * t + 0.50 * y + 0.5;
end
else
if p >= 2/3 then
begin
x := 0.50 * x + 0.00 * y - 0.25;
y := 0.00 * t + 0.50 * y + 0.0;
end
else
begin
x := 0.50 * x + 0.00 * y + 0.25;
y := 0.00 * t + 0.50 * y + 0.0;
end;
PutPixel(mx + Round(rad * x), my - Round(rad * y), 2);
end;
end;

begin
gd := Detect;
InitGraph(gd,gm,'');
draw;
ReadKey;
CloseGraph;
end.


Программа строит треугольник Серпинского




© OSzone.net 2001-2012