|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
23.03.2018, 11:56 | #1 |
Пользователь
Регистрация: 23.03.2018
Сообщений: 10
|
цикл в цикле. не могу разобраться с задачей.
Приветствую, уважаемые форумчане. Никак не могу разобраться с числами в данной задаче: На плоскости находятся две фигуры. Одна фигура будет фиксирована и это будет многоугольник, другая фигура – круг, будет меняться.
Программа должна запрашивать координаты центра (x, y) и радиус r круга. -10000< x, y, r<10000 Требуется вычислить количество точек пересечения этих фигур, координаты которых целые числа. Квадрат. Стороны квадрата параллельны осям координат. Сторона 200. Верхний угол (300, 400) Вот все что имею. Надеюсь сможете растолковать и объяснить что надо исправить и как. Спасибо. Код:
|
23.03.2018, 13:36 | #2 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
А зачем эти дикие циклы? У тебя есть координаты нескольких отрезков и окружности. Дальше везде под расстоянием имеется в виду расстояние от центра окружности. Расстояние до отрезка - расстояние до прямой на которой отрезок лежит.
Если расстояние до каждого из концов отрезка меньше радиуса или расстояние до отрезка больше радиуса, то нет точек пересечения. Иначе если расстояние только до одного из концов отрезка не меньше радиуса, то пересечение в одной точке. Иначе пересечение в двух точках
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Последний раз редактировалось Аватар; 23.03.2018 в 13:39. |
23.03.2018, 13:47 | #3 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
Вы путаете круг и окружность. И квадрат тут, вероятно, имеется в виду плоская фигура, а не контур.
пересечений у двух плоских фигур может быть бесконечно много. поэтому и нужно выделить только те, что имеют целочисленные координаты. пример-иллюстрацию набросать или я достаточно понятно объяснил своё имхо? я бы написал что-то вроде Код:
Последний раз редактировалось Serge_Bliznykov; 23.03.2018 в 13:54. |
23.03.2018, 13:53 | #4 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Скорее всего так и есть, не правильно понял. Тогда сравнивать квадрат расстояния от всех целочисленных точек прямоугольника до центра окружности с квадратом радиуса. Если произвольный многоугольник, то существенно усложнится
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
23.03.2018, 13:56 | #5 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
C++ не могу разобраться в цикле! | Iskander_1 | Помощь студентам | 7 | 09.08.2011 11:52 |
Опять не могу разобраться с задачей | biowoooooolf | Паскаль, Turbo Pascal, PascalABC.NET | 3 | 11.03.2011 13:02 |
не могу разобраться с задачей | Sagara2_kis7 | Помощь студентам | 18 | 28.02.2011 18:56 |
не могу разобраться с задачей | MAX722 | Microsoft Office Excel | 9 | 23.02.2011 13:11 |