|
58 / 55 / 28
Регистрация: 20.05.2015
Сообщений: 256
|
||||||
Проверить, пересекаются ли две окружности03.07.2015, 11:19. Показов 29037. Ответов 8
Метки нет (Все метки)
Добрый день, не получается решить данную задачу:
На плоскости даны две окружности. Требуется проверить, пересекаются ли они. Входные данные Входной файл INPUT.TXT состоит из двух строк. На каждой строке записана информация об одной окружности – координаты ее центра x и y (целые числа, по модулю не превосходящие 5000) и радиус (целое число 1 ≤ r ≤ 1000). Выходные данные В выходной файл OUTPUT.TXT выведите «YES», если окружности пересекаются, и «NO» в противном случае. Вот мой способ решения, он основан на том, чтобы для начала вычислить какая из окружностей "первая", а какая "вторая", а после этого проверить пересечение. Интересно было бы увидеть также ваши решения.
0
|
||||||
| 03.07.2015, 11:19 | |
|
Ответы с готовыми решениями:
8
Определить пересекаются ли две заданные окружности
|
|
553 / 361 / 206
Регистрация: 27.11.2014
Сообщений: 1,049
|
|
| 03.07.2015, 11:26 | |
|
Расстояние между центрами <= суммы радиусов = пересекаются.
1
|
|
|
58 / 55 / 28
Регистрация: 20.05.2015
Сообщений: 256
|
||||||
| 03.07.2015, 11:49 [ТС] | ||||||
|
По сути всё ясно, спасибо. Странно, что Visual Studio нормально компилирует, а на сайте выдает ошибку:
error C2668: sqrt: неоднозначный вызов перегруженной функции Как это исправить ?
0
|
||||||
|
1615 / 1181 / 552
Регистрация: 08.01.2012
Сообщений: 4,558
|
|
| 03.07.2015, 12:03 | |
|
один из вариантов: double x1, y1, x2, y2, r1, r2;
0
|
|
|
58 / 55 / 28
Регистрация: 20.05.2015
Сообщений: 256
|
||||||
| 03.07.2015, 13:00 [ТС] | ||||||
|
Странно, не проходит тесты, я что-то не учёл ?
0
|
||||||
|
Модератор
13769 / 10962 / 6491
Регистрация: 18.12.2011
Сообщений: 29,238
|
|||||||
| 03.07.2015, 13:05 | |||||||
|
2. Надо избавиться от sqrt
1
|
|||||||
|
58 / 55 / 28
Регистрация: 20.05.2015
Сообщений: 256
|
|
| 03.07.2015, 13:15 [ТС] | |
|
0
|
|
|
Модератор
13769 / 10962 / 6491
Регистрация: 18.12.2011
Сообщений: 29,238
|
||
| 03.07.2015, 13:53 | ||
|
Почему не может быть окружности радиусом в полтора метра?
0
|
||
|
58 / 55 / 28
Регистрация: 20.05.2015
Сообщений: 256
|
|||||||||||||
| 03.07.2015, 14:35 [ТС] | |||||||||||||
Решение:
ля начала определимся с тем, что нам известны радиусы окружностей и они равны r1 и r2. Так же по формуле расстояния между точками мы можем вычислить расстояние между центрами данных окружностей: r = sqrt( (x2-x1)2 + (y2-y1)2 ) Заметим так же, что окружности будут пересекаться тогда и только тогда, когда возможен треугольник со сторонами r1, r2 и r. Фигуру, две стороны которой лежат на третьей или одна из сторон имеет нулевую длину так же будем считать треугольником, т.к. окружности могут друг друга касаться(r=r1+r2), либо полностью совпадать (r=0). Треугольник считается возможным если сумма двух любых его сторон не меньше третьей. Т.е. в нашем случае достаточно проверить, что r1+r2>=r и r+r2>=r1 и r+r1>=r2. При этом желательно использовать вещественные типы данных. Так же можно провести аккуратное сравнение с учетом возможных погрешностей при вычислениях.
2
|
|||||||||||||
| 03.07.2015, 14:35 | |
|
Помогаю со студенческими работами здесь
9
ООП: принять две фигуры Shape*, и проверить, пересекаются ли они
Как узнать пересекаются ли окружности Определить в скольких точках пересекаются окружности Определите, во скольких точках пересекаются окружности. Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
|
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
|
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут.
В век Веб все очень привыкли к дизайну Single-Page-Application .
Быстренько разберем подход "на фреймах".
Мы делаем одну. . .
|