Python: проверить, пересекаются ли окружности двух окружностей или перекрываются
Python Basic - 1: Упражнение 45 с решением
Есть две окружности C1 с радиусом r1, центральной координатой (x1, y1) и C2 с радиусом r2 и центральной координатой (x2, y2)
Напишите программу на Python, чтобы проверить следующее:- «C2 находится в C1», если C2 находится в C1
- «C1 находится в C2», если C1 находится в C2
- «Окружность С1 и С2 пересекаются», если пересекаются С1 и С2, и
- «C1 и C2 не перекрываются», если C1 и C2 не перекрываются.
Входные данные :
Входные числа (действительные числа) разделяются пробелом.
Иллюстрированная презентация:
Пример решения :
Код Python:
import math
print("Input x1, y1, r1, x2, y2, r2:")
x1,y1,r1,x2,y2,r2 = [float(i) for i in input().split()]
d = math.sqrt((x1-x2)**2 + (y1-y2)**2)
if d < r1-r2:
print("C2 is in C1")
elif d < r2-r1:
print("C1 is in C2")
elif d > r1+r2:
print("Circumference of C1 and C2 intersect")
else:
print("C1 and C2 do not overlap")
Пример вывода:
Введите x1, y1, r1, x2, y2, r2: 5 6 4 8 7 9 С1 находится в С2
Блок - схема:
Редактор кода Python:
Есть другой способ решить это решение? Внесите свой код (и комментарии) через Disqus.
Предыдущий: Напишите программу на Python, чтобы найти максимальную сумму смежной подпоследовательности из заданной последовательности чисел a1, a2, a3, ... an. Подпоследовательность одного элемента также является непрерывной подпоследовательностью.
Далее: Напишите программу на Python, которая считывает дату (с 2016/1/1 по 2016/12/31) и печатает день даты. 1 января 2016 года - пятница. Обратите внимание, что 2016 год високосный.
Каков уровень сложности этого упражнения?
Новый контент: Composer: менеджер зависимостей для PHP , R программирования