Заданы декартовы координаты центров двух окружностей и их радиусы. Определить их взаимное положение (совпадают, касаются внешне, касаются внутренне, пересекаются в 2 точках, не пересекаются или лежат одна в другой.) — Pascal(Паскаль)

Program project1;
procedure Input(var x1, y1, x2, y2, r1, r2:real);
{процедура ввода}
begin
  write('vvedite x1='); readln(x1);
  write('vvedite y1='); readln(y1);
  write('vvedite x2='); readln(x2);
  write('vvedite y2='); readln(y2);
  write('vvedite r1='); readln(r1);
  write('vvedite r2='); readln(r2);
  end;
 
procedure Output(x1, y1, x2, y2, r1, r2:real);
{процедура вывода}
var d:real;
begin
  d:=sqrt(sqr(x1-x2)+sqr(y1-y2));
if (x1=x2) and (y1=y2) and (r1=r2) then  writeln('sovpadaut')
else if d=r1+r2  then writeln('vneshnee kasanie')
else if d=abs(r1-r2) then writeln('vnutrennee kasanie')
else if d>r1+r2 then writeln('ne peresekautsya' )
else if d<r1+r2 then writeln('peresekautsya v dvuh tochkah')
else  writeln('odna v drugoy');
end;
 
var
    x1, y1, x2, y2, r1, r2, d:real;
 
begin
  Input(x1, y1, x2, y2, r1, r2);
  Output(x1, y1, x2, y2, r1, r2);
  ReadLn;
end.

Leave a Comment

31 − 29 =