绘制具有随机半径的连续圆

Draw contiguous circles with random radiuses

好吧,我必须生成 10 个随机半径,然后绘制圆圈。但我不确定如何计算 X 坐标,以便它们是连续的。我得到了这段代码,但它不能正常工作

uses graphabc;
var
a: array [1..10] of integer; 
i, x, y, r, rn: integer;
begin

i:=1;
while (i < 11) do begin
  rn:= random(5,50);
  a[i]:=rn;
  i:=i+1;
end;

r:=a[1];
y:=300;
x:=100;


for i:=1 to 10 do begin
  circle(x, y, r);
  r:=a[i];
  x:=x+r;
  end;
end.

要使两个圆相互接触,圆心之间的距离必须是两个半径之和。简单更正(需要shift的去掉if i > 1):

for i:=1 to 10 do begin
  r:=a[i];
  if i > 1 then
      x:=x+r;
  circle(x, y, r);
  x:=x+r;
  end;
end.