Вот собственно код:
dre:=(sqrt(sqr(Xc[j]-Xc[i])+sqr(Yc[j]-Yc[i])));
Dre:Integer;
Пишет ошибкку что с двух сторон ":=" должен быть один тип... Что делать? Перевод всего в реал приносит в подарок кучу ошибок...
Функции округления не работают(Может подключить что-то надо? Ни Floor, ни Ceil)
На всякий случай(вдруг тупая ошибка)-
//Проработка и нарисовка шариков
Procedure drawCircus(sh:integer);
Var i:integer;
Var dre:integer;
begin
For i:=1 to sh do begin
for j:=1 to 4 do begin
dre:=(sqrt(sqr(Xc[j]-Xc[i])+sqr(Yc[j]-Yc[i])));
if d<10 then begin
dy[i]:=(yc[i])-(yc[J]-yc[i])/10*(10-dre);
dx[i]:=(xc[i])-(xc[J]-xc[i])/10*(10-dre);
dy[j]:=(yc[j])-(yc[i]-yc[j])/10*(10-dre);
dx[j]:=(xc[j])-(xc[j]-xc[j])/10*(10-dre);
end;
end;
if ((xc[i] < 10) OR (xc[i] > GetWidth - 20)) then dx[i]:=-dx[i];
if ((yc[i] < 8) OR (yc[i] > GetHeight - 15)) then dy[i]:=-dy[i];
if (xc[i] < 10) then xc[i] := 10 ;
if (yc[i] < 8) then yc[i] := 8 ;
if xc[i] > GetWidth - 20 then xc[i] := GetWidth - 20 ;
if yc[i] > GetHeight - 15 then yc[i] := GetHeight - 15;
if (xc[i]-(d div 2) <= x) and (y<=yc[i]) and (yc[i]<=y+30 )then
dx[i]:=-dx[i];
xc[i]:=xc[i]+dx[i];
yc[i]:=yc[i]+dy[i];
DrawEllipse(xc[i], yc[i], d, d);
end;
end;
Тупые Пиксели)