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

Наталий
Jul 1, 2019
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)lt;1.0e-9 then k:=1;
if r*r-sqr(x-a)-sqr(y-b)gt;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
точка на окружности
217
Смежные вопросы: