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

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

Войти
Регистрация
Восстановить пароль
 
reflection_mp3
1 / 1 / 0
Регистрация: 12.03.2013
Сообщений: 94
#1

Принадлежит ли введенная точка данной области? - C++

12.03.2013, 23:13. Просмотров 1052. Ответов 5
Метки нет (Все метки)

Помогите с программой, очень нужно!

Разработка алгоритма решения
Принадлежит ли введенная точка данной области?
вот условие задачи

Первым шагом алгоритма должен быть ввод координат точки: x и y. Для большего удобства при анализе результатов можно вывести введенные значения на экран.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.03.2013, 23:13     Принадлежит ли введенная точка данной области?
Посмотрите здесь:

C++ Принадлежит ли точка области.
Принадлежит ли точка заштрихованной области C++
Определите, принадлежит ли точка данной окружности C++
Проверить, принадлежит ли введенная точка заданной области C++
принадлежит ли заданная точка области C++
C++ Принадлежит ли точка заштрихованной области
C++ Принадлежит ли точка заданной области
Принадлежит ли точка заштрихованой области C++
C++ Принадлежит ли точка заштрихованной области?
Принадлежит ли точка области C++
Принадлежит ли точка указанной области C++
C++ Задача - принадлежит ли точка данной области функции С++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Страус
12 / 1 / 1
Регистрация: 15.04.2012
Сообщений: 26
13.03.2013, 00:39     Принадлежит ли введенная точка данной области? #2
Сначала найдём уравнения функций, которые эту область ограничивают.
1. Парабола y=x*x-1
2. Прямая y=1
3. Ось Oy, или прямая x=0.

Теперь определим, что принадлежит заштрихованной области.
То, что выше параболы, правее Oy и ниже у=1.

Всё, можем писать код.

C++
1
2
3
4
5
6
7
8
9
10
11
#include <stdio.h>
#include <iostream>
using namespace std;
int main(){
   int x,y;
   cout << "Input x,y" << endl;
   cin >> x >> y;
   if ((y>=x*x-1)&&(y<=1)&&(x>=0)) cout >> "\nYes."
   else cout >> "\nNo."
   return 0;
}
*Если, конечно, у вас там в условии с учётом границ области нужно определять принадлежность. Без учёта - знаки меняйте на строгие.
reflection_mp3
1 / 1 / 0
Регистрация: 12.03.2013
Сообщений: 94
13.03.2013, 09:44  [ТС]     Принадлежит ли введенная точка данной области? #3
Цитата Сообщение от Страус Посмотреть сообщение
Сначала найдём уравнения функций, которые эту область ограничивают.
1. Парабола y=x*x-1
2. Прямая y=1
3. Ось Oy, или прямая x=0.

Теперь определим, что принадлежит заштрихованной области.
То, что выше параболы, правее Oy и ниже у=1.

Всё, можем писать код.

C++
1
2
3
4
5
6
7
8
9
10
11
#include <stdio.h>
#include <iostream>
using namespace std;
int main(){
   int x,y;
   cout << "Input x,y" << endl;
   cin >> x >> y;
   if ((y>=x*x-1)&&(y<=1)&&(x>=0)) cout >> "\nYes."
   else cout >> "\nNo."
   return 0;
}
*Если, конечно, у вас там в условии с учётом границ области нужно определять принадлежность. Без учёта - знаки меняйте на строгие.

оно не правильно ищет, я ввожу координаты точки 10;10 программа пишет что принадлежит!
Страус
12 / 1 / 1
Регистрация: 15.04.2012
Сообщений: 26
13.03.2013, 16:32     Принадлежит ли введенная точка данной области? #4
reflection_mp3, а вы в компилятор код без ошибок загнали?
Посмотрите сами на проверку условия:

C++
1
if ((y>=x*x-1)&&(y<=1)&&(x>=0))
Проверим вручную.
10>=10*10-1? нет, конечно. Программа выходит на else.
Второе условие, 10<=1, тоже не выполняется (даже если первое чудом проскочило.)

Я у себя на Dev-C++ запустила, у меня пишет, что не принадлежит. Гляньте, я вам даже скрин кину, чтобы Вы сами убедились.
http://i031.***********/1303/0b/990ced7499b6.jpg

В общем, проверяйте, как написали код, у меня всё работает, товарищ.
zss
Модератор
Эксперт С++
6244 / 5847 / 1891
Регистрация: 18.12.2011
Сообщений: 14,980
Завершенные тесты: 1
13.03.2013, 16:53     Принадлежит ли введенная точка данной области? #5
Цитата Сообщение от Страус Посмотреть сообщение
if ((y>=x*x-1)&&(y<=1)&&(x>=0))
Уравнение круга x^2+y^2=1, поэтому условие такое
C++
1
if ((y*y+x*x<=1)&&(y<=1)&&(x>=0))
Страус
12 / 1 / 1
Регистрация: 15.04.2012
Сообщений: 26
14.03.2013, 00:42     Принадлежит ли введенная точка данной области? #6
zss, я, конечно, извиняюсь, но где вы там круг-то разглядели? Парабола же...

И если делать по-Вашему, вроде как это четвертинка кружочка в четвёртой координатной четверти, то придётся оставшуюся часть отдельно описывать (на рисунке красненькое). У Вас вообще закрашенную область разнесёт в неведомые дали.
http://s017.***********/i409/1303/2d/8e86bd46266c.jpg
?
Yandex
Объявления
14.03.2013, 00:42     Принадлежит ли введенная точка данной области?
Ответ Создать тему
Опции темы

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