2 / 2 / 1
Регистрация: 03.11.2009
Сообщений: 227
|
|
1 | |
Точка с координатами19.09.2010, 16:19. Показов 4467. Ответов 27
Метки нет (Все метки)
Ребята такое дело,я только начала изучать C++,а препод уже назадавал очень много и я не знаю как это делать.Примеры однотипные.Я вам напишу один,а остальные уже буду решать по аналогии.Помогите пожалуйста!
Задача толклм не поставлена.Надо составить программу,которая проверяла принадлежит данная точка заданной области или нет?Область на графике находиться в 1 и 3 четверти,между окружностью большего радиуса=2 и меньшего=1.5. Понятия не имеею как это сделать!!!Кроме того,что раз 1 и 3 четверть,то x*y>0.
0
|
19.09.2010, 16:19 | |
Ответы с готовыми решениями:
27
Дана ограниченная область и точка A(x0, y0). Написать программу, которая проверяет, попадает ли точка с координатами пол точка с координатами х,у. х<>0 Определить, принадлежит ли точка с координатами Попадет ли точка с координатами X, Y в фигуру? |
5055 / 3115 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
|
||||||
19.09.2010, 16:38 | 2 | |||||
barlog,
Я так понимаю, окружностьи имеют центр в начале координат? Если так, то вам просто надо посчитать расстояние d от начала координат до заданной точки (d = sqrt(x^2 + y^2 + z^2)) И проверить, попадает ли оно в промежуток [1.5; 2] (т.е. между радиусами окружностей). Добавлено через 1 минуту Упс, у нас же двухмерщина))) Код
d = sqrt(x^2 + y^2) Что-то вроде этого
1
|
2 / 2 / 1
Регистрация: 03.11.2009
Сообщений: 227
|
|
19.09.2010, 20:21 [ТС] | 3 |
Спасибо огромное!Почему я сразу не подумала про формулу расстояния!!!Спасибо!
Только вот в одном номере,тут уже формула расстояний не действует.Тут уже область представляет собой квадрат(1 на 1) ,у которого срезаны углы(прямоугольные треугольники ,у которых катеты равны 0.5).Никто не подаст идею,как в этом случае можно задать оставшуюся область(8ми угольник)?Пожалуйста,подскажите,не могу сообразить. Добавлено через 22 минуты Пожалуйста ,подскажите.У меня таких 5 похожих задач!Дайте идею!Как задать???
0
|
5055 / 3115 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
|
|
19.09.2010, 20:24 | 5 |
0
|
2 / 2 / 1
Регистрация: 03.11.2009
Сообщений: 227
|
|
19.09.2010, 20:31 [ТС] | 6 |
Это я понимаю прекрасно.В квадрате или нет.Но как записать это для программы?Центр квадрата ведь в начале координат.Как это все записать для каждой четверти?...
Добавлено через 53 секунды Спасибо silent_1991. Добавлено через 3 минуты Как-то в викепедии замудренно написано...и я половину не знаю...у меня было только 2 занятия по C++,мы прошли только ввод и вывод,и оператор if...а как-нить по проще и по понятнее...
0
|
5055 / 3115 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
|
|
19.09.2010, 20:34 | 7 |
barlog,
Ну и что, что в начале координат. Пишите функцию, которая проверяет, не лежит ли точка в каждом из треугольников, возвращающую 0 в случае, если точка лежит в одном из них, или 1 в противном случае. Псевдо Код
int проверка() { if (точка лежит в первом треугольнике) return 0; if (точка лежит во втором треугольнике) return 0; if (точка лежит в третьем треугольнике) return 0; if (точка лежит в четвёртом треугольнике) return 0; return 1; } В википедии дан код, там два вложенных цикла и куча арифметических операций... Так что ничего сложного, сложность вся в матчасти.
1
|
2 / 2 / 1
Регистрация: 03.11.2009
Сообщений: 227
|
|
19.09.2010, 20:38 [ТС] | 8 |
я не знаю,что такое возвращающее 0...и к чему оно...зачем?...знаю только if...else...(((
0
|
5055 / 3115 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
|
|
19.09.2010, 20:41 | 9 |
barlo,
Тогда без функции, этот код вставить в основную программу, и везде вместо return 0; писать "Не попадает", а вместо return 1 - "Попадает". Сами разберётесь, как проверку попадания в треугольники делать? Этот вопрос уже не по программированию, и не по си++ в частности.
1
|
2 / 2 / 1
Регистрация: 03.11.2009
Сообщений: 227
|
|
19.09.2010, 20:58 [ТС] | 10 |
да я знаю,голова слабо работает...Всего 12 треугольников(в данном случае).И как я для каждого в разных четвертях задам ураснения ,используя if...?
...я безнадежна(( Добавлено через 7 минут в викепедии речь идет о каких-то массивах...(( Добавлено через 1 минуту алгоритм проверки принадлежности к треугольникам мне ясен...а вот само задание треугольников?как задать эти треугольники?они еще не все одинаковые... Добавлено через 2 минуты Про сумму всех треугольников тоже ясно...разбившееся маленькие в сумме составляют исходный...все ясно...логика выполнения ясна...а как же это реализовать в программе?как задать это разбиение?...
0
|
5055 / 3115 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
|
|
19.09.2010, 21:04 | 12 |
Стоп. Откуда их 12?
1
|
2 / 2 / 1
Регистрация: 03.11.2009
Сообщений: 227
|
||||||
19.09.2010, 21:18 [ТС] | 13 | |||||
Добавлено через 2 минуты ну оператор if -ясно....а что под ним написано - нет... Добавлено через 2 минуты как откуда 12...по 3 треугольника в каждой четверти...а если не обращать внимание на четверти,то их будет 8.....наверное..... Добавлено через 2 минуты а я не знаю pointlnPolygon...
0
|
5055 / 3115 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
|
|
19.09.2010, 21:23 | 14 |
Теперь я вас не понимаю... Тут ничего сверхъестественного нет, всё стандартно. Скажите, что вам не понятно?
Добавлено через 2 минуты Здесь много операторов иф. Что конкретно не ясно? и с чего по 3 треугольника в каждой четверти-то? Дан квадрат. У него срезаны углы. У квадрата центр в начале координат. Следовательно по одному треугольнику в каждой четверти.
1
|
2 / 2 / 1
Регистрация: 03.11.2009
Сообщений: 227
|
|
19.09.2010, 21:31 [ТС] | 15 |
Неа он не так срезан....смотрите у нас есть квадрат с центром в начале координат...рассмотрим например 1 четверть она тоже квадрат(размеры 1 на 1) и у этого квадратика срезают маленький уголок(прямоугольный треугольник с катетами по 0.5),в результате вместо этого квадратика получается пятиугольник с 3мя прямыми углами и 2мя тупыми....и если соединить начало координат с двумя вершинами этого пятиугольника будет 3 треугольника....2 прямоугольных и 1 равнобедренный...
Добавлено через 1 минуту это я виновата:размер всего квадрата 2 на 2.Это координаты пересечения с x и y равны 1.Извините... Добавлено через 30 секунд Вот из-за чего непонимание...
0
|
5055 / 3115 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
|
|
19.09.2010, 21:34 | 16 |
Можно текст задания дословно?
1
|
2 / 2 / 1
Регистрация: 03.11.2009
Сообщений: 227
|
|
19.09.2010, 21:44 [ТС] | 17 |
Текста нет только рисунок...это вот эта область....Определить принадлежит точка с координатами x и y данной области или нет?Область это квадрат размером 2 на 2 в центре координат со срезанными уголками,так как описано выше.
0
|
5055 / 3115 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
|
|
19.09.2010, 21:57 | 18 |
Ну а хотя бы рисунок выложите
1
|
2 / 2 / 1
Регистрация: 03.11.2009
Сообщений: 227
|
|
19.09.2010, 22:07 [ТС] | 19 |
вот это ...и центр его в начале координат
0
|
5055 / 3115 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
|
|
19.09.2010, 22:12 | 20 |
Ну и где вы видите 12 треугольников? Вам сначала надо определить, попадает ли точка в квадрат. Отбросив то, что у него срезаны углы. А затем определить, не попадает ли точка в один из срезанных углов (т.е. в один из треугольников). Если точка лежит в квадрате и не лежит ни в одном из треугольников - она лежит в области. иначе - не лежит.
1
|
19.09.2010, 22:12 | |
19.09.2010, 22:12 | |
Помогаю со студенческими работами здесь
20
Определить, принадлежит ли точка с координатами... Принадлежит ли точка с координатами (х, у) заданной области? Точка с координатами (х, у) принадлежит части плоскости Попадает ли точка с заданными координатами в полукруг Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |