powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Рекурсия, или Сам себя не похвалишь — ...
2 сообщений из 2, страница 1 из 1
Рекурсия, или Сам себя не похвалишь — ...
    #32355648
Ой Вэй
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Написал недавно функцию, которая ищет пересечение двух окружностей:
Код: plaintext
1.
2.
3.
int IntersCircles(
    double x1, double y1, double r1,
    double x2, double y2, double r2,
    double& a1, double& b1, double& a2, double& b2);
x1, y1, r1 — центр и радиус одной окружности, x2, y2, r2 — центр и радиус второй.
a1, b1, a2, b2 — точки пересечения.

Выражаю х через у, получается коэффициент -(y2-y1)/(x2-x1).
Надо рассмотреть случай х1 == х2, нехорошо делить на ноль.
А если не ноль, а очень маленькое число? Тоже нехорошо.
Надо тогда выражать у через х. Написал:
Код: plaintext
1.
2.
3.
4.
5.
6.
int IntersCircles(...)
{
    if(y2-y1 > x2-x1)
        return IntersCircles(y1,x1,r1,y2,x2,r2,b1,a1,b2,a2);

    //а тут решение для первого случая
}
Детский сад, но смешно.
...
Рейтинг: 0 / 0
Рекурсия, или Сам себя не похвалишь — ...
    #32355773
Фотография JibSkeart
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
:)
____
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Рекурсия, или Сам себя не похвалишь — ...
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]