Определить, принадлежит ли точкам M(x,y) кругу радиуса R с центром в точке O(a,b) - Turbo Pascal

Узнай цену своей работы

Формулировка задачи:

Определить, принадлежит ли точкам M(x,y) кругу радиуса R с центром в точке O(a,b). Если – да, найти расстояние между точками M(x,y) и O(a,b).

Решение задачи: «Определить, принадлежит ли точкам M(x,y) кругу радиуса R с центром в точке O(a,b)»

textual
Листинг программы
uses crt;
type point=record
           x,y:real;
           end;
function rasst(a,b:point):real;
begin
rasst:=sqrt(sqr(a.x-b.x)+sqr(a.y-b.y));
end;
var m,n,o:point;
    r,s:real;
    t:boolean;
begin
clrscr;
writeln('Введите координаты точки M');
readln(m.x,m.y);
writeln('Введите координаты точки N');
readln(n.x,n.y);
writeln('Введите координаты точки O');
readln(o.x,o.y);
repeat
write('Введите радиус круга R>0 R=');
readln(r);
until r>0;
t:=(rasst(m,o)<=r)and(rasst(n,o)<=r);
if t then
 begin
  writeln('Точки M,N принадлежат кругу');
  write('Расстояние между ними=',rasst(m,n):0:2);
 end
else  writeln('Не обе точки принадлежат кругу');
readln
end.

Объяснение кода листинга программы

  1. Создается тип данных point с полями x и y для хранения координат точек.
  2. Определяется функция rasst, которая вычисляет расстояние между двумя точками, используя формулу расстояния между двумя точками на плоскости.
  3. Объявляются переменные m, n и o типа point для хранения координат точек M, N и O соответственно.
  4. Объявляется переменная r для хранения радиуса круга.
  5. Запускается цикл чтения координат точек M, N и O.
  6. Проверяется, что введенный радиус круга больше нуля.
  7. Проверяется, что обе точки (M и N) принадлежат кругу, используя функцию rasst.
  8. Если условие выполняется, выводится сообщение о том, что точки M и N принадлежат кругу, а также расстояние между ними.
  9. Если условие не выполняется, выводится сообщение о том, что хотя бы одна из точек не принадлежит кругу.
  10. Программа завершается после ввода всех данных.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 4 из 5
Похожие ответы