03. Circle Intersection -> непълно задание.
Задачата е от упражнението Classes and Objects. С това решение получавам 100 точки, но това не би трябвало да е така. В условието се пита дали двете окръжности се пресичат, задават се координатите на центровете на окръжностите и техните радиуси по следния начин: {x} {y} {r}. Като на първия ред получаваме координатите на първата окръжност на втория ред на втората.
Input:
0 0 10
0 0 5
Output: True
При дадения пример output-а би трябвало да е false, тъй като двете окръжности очевидно не се пресичат. Втората се съдържа в пърата, съответно нямат допирни точки(точки на пресичане), въпреки че сбора от радиусите им е по-голям от дистанцията между точките.
Имаш право. Очевидно пресичането само по себе си е подмножество на припокриването, тъй като се дефинира като:
a ∩ b ≠ ∅
а и b трябва да имат една или повече общи точки. И все пак това зависи от начина, по който разглеждаме фигурите:
1. Като окръжности с реална площ.
2. Като кръгове с определен радиус около точка приета за център.
В първия случай условието ще бъде вярно, докато във вторият - не. И все пак условието на задачата не е толкова важно, колкото факта, че ме накара да се замисля! Благодаря!
Благодаря и аз.
Другото, което ми идва на ум като асоциация е да си го представяш като логическото "и" в програмирането &&