Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Belfegor
Ghost
172 / 172 / 6
Регистрация: 16.09.2012
Сообщений: 524
#1

Принадлежность точки к заданой плоскости - C++

27.04.2013, 00:40. Просмотров 432. Ответов 3
Метки нет (Все метки)

Доброго времени суток, этот вопрос уже подымался, но внятного ответа получено небыло
собственно задача:
Определите, принадлежит ли точка A, заданная координатами (x0; y0), части плоскости, ограниченной отрезком оси абсцисс от 0 до и синусоидой y = sin x.


Технические условия
Входные данные

В единственной строке заданы координаты заданной точки (x0; y0). Значения координат точки не превышают по модулю 100.

Выходные данные

В единственной строке вывести сообщение YES - в случае если точка принадлежит указанной части плоскости, NO - в случае, если не принадлежит, и ON BORDER - в случае, если нам "повезло" и точка принадлежит линии, которая ограничивает указанную часть плоскости. В этой задаче считать, что точка принадлежит любой из линий, ограничивающих заданную часть плоскости, если при одинаковых абсциссах расстояние от неё до какой-то из ограничивающих часть плоскости линий по оси ординат не превышает 0.00001, или же при одинаковых ординатах, расстояние от точки до какой-то из ограничивающих часть плоскости линий по оси абсцисс также не превышает 0.00001.
e-olimp
http://www.e-olimp.com/problems/2028

набросок:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
#include<iostream>
#include<cmath>
#include<cstdio>
#include<cstring>
#include<string>
#include<set>
#include<algorithm>
#include<vector>
#include<map>
#include<iomanip>
 
using namespace std;
 
#define DB(a) cout<<#a<<"="<<a<<" ";
#define DBN(a) cout<<#a<<"="<<a<<endl;
 
 
typedef long long ll;
typedef unsigned long long ull;
typedef vector<int> vi;
typedef pair<int, int> pii;
typedef vector<ll> vll;
typedef vector<pii> vpii;
typedef map<int, int> mii;
typedef set<int> seti;
 
//#define min(a,b) ((a)<(b)?(a):(b))
//#define max(a,b) ((a)>(b)?(a):(b))
//#define sqrt(a) (sqrt(1.0*(a)))
//#define sqr(a) ((a)*(a))
//#define all(a) (a.begin(),a.end())
 
 
//const int mod = 1000000007; // const int mod = 1000000009;
//const double EPS = 1E-7;
 
int main() {
    double x, y, fx, fr;
    cin >> x >> y;
    if (x > M_PI / 2) x -= M_PI / 2;
    fx = sin(2 * x);
    fr = asin(y) / 2;
    if ((x >= M_PI / 2 && x <= M_PI / 2) && (fabs(x - fabs(asin(y - 0.0001)) / 2) < 0.0001 || fabs(x - fabs(asin(y + 0.0001) / 2)) < 0.0001)) cout << "ON BORDER" << endl;
    else if (fx + 0.0001 < y || x<-0.0001 || y<-0.0001 || x > M_PI / 2 + 0.0001 || y > 1 + 0.0001) cout << "NO" << endl;
    else if ((x >= 0 && x <= M_PI / 2) && (fabs(y) < 0.0001 || fabs(y - fx) < 0.0001)) cout << "ON BORDER" << endl;
    else if (fabs(fx - y) < 0.0001 || fabs(fr - x) < 0.0001) cout << "ON BORDER" << endl;
    else cout << "YES" << endl;
    return 0;
}
11 тестов не проходит... подскажите пожалуйста что-нибудь
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.04.2013, 00:40     Принадлежность точки к заданой плоскости
Посмотрите здесь:

Проверить принадлежность точки к плоскости - C++
Собственно сабж. Проблема в том, что программа не выводит ничего вообще. Я думаю, что при написании программы я криво реализовал работу...

Принадлежность точки к заданной плоскости - C++
Определите, принадлежит ли точка A, заданная координатами (x0; y0), части плоскости, ограниченной отрезком оси абсцисс от 0 до и...

принадлежность точки - C++
Нужно проверить принадлежность точки заштрихованной области. Не пойму как задавать, точнее что писать в ифе. Кто бы помог мне или...

принадлежность точки прямоугольнику - C++
Задача: определить,принадлежит ли точка прямоугольнику. Заданы координаты точки и вершин прямоугольника. Прямоугольник может располагаться...

Принадлежность точки рисунку - C++
Разработать алгоритм и написать программу вычисления принадлежности точки с заданными координатами (x, y) заштрихованной об-ласти....

Принадлежность точки прямоугольнику - C++
написать функцию для проверки принадлежности точки с координатами (x,y) прямоугольнику x

принадлежность точки к кольцу - C++
#include &lt;iostream&gt; #include &lt;math.h&gt; using namespace std; void main() { // Объявление переменных int x0, y0, r1, r2, x, y;...

Принадлежность точки фигуре - C++
Программа для проверки, принадлежит ли точка с координатами (x, y) в заданной области Объясните, пожалуйста алгоритм. Заранее...

Принадлежность точки к отрезку. - C++
УВАЖАЕМЫЕ ЭКСПЕРТЫ ПОМОГИТЕ УЛУЧшИТЬ АЛГОРИТМ ДЛЯ ДАННОЙ ЗАДАЧИ.... Точки и отрезки (Время: 2 сек) Дано N отрезков на числовой прямой...

Принадлежность точки N-угольнику. - C++
Ребята, помогите, ПОЖАЛУЙСТА. На плоскости задается выпуклый N - угольник целочисленными координатами своих вершин в порядке обхода по...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
castaway
Эксперт С++
4881 / 3017 / 370
Регистрация: 10.11.2010
Сообщений: 11,076
Записей в блоге: 10
Завершенные тесты: 1
27.04.2013, 00:50     Принадлежность точки к заданой плоскости #2
Вообще-то эта задача с сайта на проверку своих собственных способностей.
Ты хочешь подняться в рейтинге за счет кого-то другого?
Belfegor
Ghost
172 / 172 / 6
Регистрация: 16.09.2012
Сообщений: 524
27.04.2013, 00:57  [ТС]     Принадлежность точки к заданой плоскости #3
Цитата Сообщение от lazybiz Посмотреть сообщение
на проверку своих собственных способностей
не всегда
IrineK
Заблокирован
27.04.2013, 04:09     Принадлежность точки к заданой плоскости #4
Первое, что можно заметить: в задаче ограничение пятого порядка, а в вашем исходнике - четвертого.
Yandex
Объявления
27.04.2013, 04:09     Принадлежность точки к заданой плоскости
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru