|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
27.10.2011, 23:58 | #1 | |
Регистрация: 14.10.2011
Сообщений: 3
|
Гляньте кто шарит
Дана точка на плоскости с координатами (х, у). Составить алгоритм, который выдает сообщение "Да" если точка лежит внутри заштрихованной области, "Нет" – если точка лежит вне заштрихованной области, "На границе" – если точка лежит на границе заштрихованной области.
(я составил программу, но проверяю и ничерта не сходится) Помогите кто... Вот сам мой код: Цитата:
|
|
28.10.2011, 00:23 | #2 |
Старожил
Регистрация: 25.10.2011
Сообщений: 3,178
|
Код:
Проще всего сравнивать сумму квадратов координат с квадратом радиуса. И поставьте операторные скобки {} для if-else, они уменьшат шансы запутаться в будущем. Также обращаю внимание, что точка лежит на границе, если она ЛИБО принадлежит меньшей дуге (принадлежит окружности И находится в верхней полуплоскости), ЛИБО принадлежит большей дуге, ЛИБО (что пропущено?). Эту проверку (а заодно и проверку на попадание внутрь) советую вынести в отдельную функцию (принимающую координаты и возвращающую bool) и назвать её "говорящим" образом (PointIsOnBorder или, на худой конец, TochkaNaGranice, хотя транслит вообще-то безобразие) - это заметно повысит читаемость кода, а заодно потом позволит намного легче перейти от верхней задачи к нижней. |
28.10.2011, 00:51 | #3 |
Форумчанин
Регистрация: 09.10.2010
Сообщений: 217
|
для первого берешь формулe окружности x^2+y^2==R^2
И аккуратно расписываешь все условия На границе: 1) лежит на большей окружности 2) лежит на меньшей окружности 3) лежит на оси Ox Внутри: 1) внутри большей и снаружи меньшей окружности Где R^2 лучше сразу писать 25 и 100, а не 5*5 и 10*10. Для второго все проще.
Ёж птица гордая, пока не пнешь не полетит.
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
указатель на функию..Кто шарит | Sbenya | Общие вопросы C/C++ | 12 | 11.07.2011 11:12 |
Ребят, кто шарит в С++ загляните... | брилиант | Помощь студентам | 7 | 04.05.2011 16:31 |
Кто шарит в 3D, ткните в литературу | mutabor | Свободное общение | 0 | 03.03.2011 18:19 |
Кто шарит в PHP | Simply-Art | PHP | 3 | 20.05.2007 21:01 |