Pascal. ОООЧЕНЬ СРОЧНО!
Заданы 5 дробных чисел. Первые два — (a, b) это координаты центра круга в декартовой системе координат. Вторая пара — (x,y) это координаты точки. Пятое число — (r) это радиус круга. Требуется написать функцию, которая определила бы, находится ли эта точка внутри круга или на его границе. Заранее спасибо!

Ответ учителя по предмету Информатика

function ptcrk(a,b,x,y,r: real): integer;

var k: integer;

begin

  k:=0;  

  if abs(sqr(x-a)+sqr(y-b)-r*r)<1.0e-9 then k:=1;

  if r*r-sqr(x-a)-sqr(y-b)>1.0e-9 then k:=2;

  ptcrk:=k;

end;

// основная программа

var a,b,x,y,r,k: real;

begin

  write(‘координаты центра a b: ‘);  readln(a,b);

  write(‘координаты точки x y: ‘);  readln(x,y);

  write(‘радиус: ‘);  readln(r);

  k:=ptcrk(a,b,x,y,r);

  if k=1 then writeln(‘точка на окружности’);

  if k=2 then writeln(‘точка внутри круга’);

  if k=0 then writeln(‘точка вне круга’);

end.

координаты центра a b: 2 1

координаты точки x y: 4 1

радиус: 2.1

точка внутри круга

координаты центра a b: 2 1

координаты точки x y: 4 1

радиус: 2

точка на окружности

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Похожие вопросы от пользователей