Определить, принадлежит ли точкам 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
Листинг программы
  1. uses crt;
  2. type point=record
  3.            x,y:real;
  4.            end;
  5. function rasst(a,b:point):real;
  6. begin
  7. rasst:=sqrt(sqr(a.x-b.x)+sqr(a.y-b.y));
  8. end;
  9. var m,n,o:point;
  10.     r,s:real;
  11.     t:boolean;
  12. begin
  13. clrscr;
  14. writeln('Введите координаты точки M');
  15. readln(m.x,m.y);
  16. writeln('Введите координаты точки N');
  17. readln(n.x,n.y);
  18. writeln('Введите координаты точки O');
  19. readln(o.x,o.y);
  20. repeat
  21. write('Введите радиус круга R>0 R=');
  22. readln(r);
  23. until r>0;
  24. t:=(rasst(m,o)<=r)and(rasst(n,o)<=r);
  25. if t then
  26.  begin
  27.   writeln('Точки M,N принадлежат кругу');
  28.   write('Расстояние между ними=',rasst(m,n):0:2);
  29.  end
  30. else  writeln('Не обе точки принадлежат кругу');
  31. readln
  32. 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

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы