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

Определить, находится ли координата на "ободе", или за пределами, или внутри круга (найти ошибку) - C++

Восстановить пароль Регистрация
 
Sapendo
5 / 5 / 3
Регистрация: 13.05.2014
Сообщений: 130
13.05.2014, 02:03     Определить, находится ли координата на "ободе", или за пределами, или внутри круга (найти ошибку) #1
Задача: пользователь вводит радиус круга и координату точки (х,у). Нужно определить находиться ли координата на "ободе" круга или за пределами круга или внутри круга!!!
Я написал следующее:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include<cmath>
using namespace std;
void main ()
{
int R, x, y;
cout<<"Input radius: \n";
cin>>R;
cout<<"Input x: \n";
cin>>x;
cout<<"Input y: \n";
cin>>y;
if (sqrt(x^2+y^2))
cout<<"Na obode\n";
else
if (((y-R)^2+(x-R)^2)<R^2)
cout<<"V krygy\n";
else cout<<"Za krygom\n";
 
}
Где ошибка?
Всем спасибо!!
P.S. И не осуждайте я только учусь))))
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.05.2014, 02:03     Определить, находится ли координата на "ободе", или за пределами, или внутри круга (найти ошибку)
Посмотрите здесь:

C++ Обчисление введенной строки любого формата(пример:"(2+3)/4*2"или"2+3"или ...)
C++ Определить число вхождений в строку подстроки "аба", вывести символы строки, не являющейся буквами или цифрами
Определить, лежит ли точка внутри или вне круга, ограниченного указанной окружностью, или на окружности C++
Определить лежит ли точка внутри или вне круга,ограниченного указанной окружностью, или на окружности C++
C++ Определить, сколько раз в тексте встречается слово "мир" или сообщить об отсутствии. Вывести текст и результат
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
malfoi
 Аватар для malfoi
50 / 50 / 15
Регистрация: 17.12.2013
Сообщений: 334
13.05.2014, 02:07     Определить, находится ли координата на "ободе", или за пределами, или внутри круга (найти ошибку) #2
в 12 строке нет сравнения с радиусом)
uhx
 Аватар для uhx
56 / 56 / 6
Регистрация: 11.07.2013
Сообщений: 300
13.05.2014, 02:08     Определить, находится ли координата на "ободе", или за пределами, или внутри круга (найти ошибку) #3
^ - это оператор XOR
Тогда как для возведения в степень используется pow(double число, double степень)
malfoi
 Аватар для malfoi
50 / 50 / 15
Регистрация: 17.12.2013
Сообщений: 334
13.05.2014, 02:10     Определить, находится ли координата на "ободе", или за пределами, или внутри круга (найти ошибку) #4
да, и лучше воспользуйтесь не целым типом данных int, а вещественным double
Sapendo
5 / 5 / 3
Регистрация: 13.05.2014
Сообщений: 130
13.05.2014, 02:13  [ТС]     Определить, находится ли координата на "ободе", или за пределами, или внутри круга (найти ошибку) #5
malfoi спасибо, но это не все((((
где-то еще ошибка либо может я не правильно написал программу(((
Посмотри еще раз!!!
malfoi
 Аватар для malfoi
50 / 50 / 15
Регистрация: 17.12.2013
Сообщений: 334
13.05.2014, 02:15     Определить, находится ли координата на "ободе", или за пределами, или внутри круга (найти ошибку) #6
Цитата Сообщение от uhx Посмотреть сообщение
^ - это оператор XOR
Тогда как для возведения в степень используется pow(double число, double степень)
может это?
или для возведения в квадрат перемножь это число на себя
uhx
 Аватар для uhx
56 / 56 / 6
Регистрация: 11.07.2013
Сообщений: 300
13.05.2014, 02:15     Определить, находится ли координата на "ободе", или за пределами, или внутри круга (найти ошибку) #7
Цитата Сообщение от Sapendo Посмотреть сообщение
malfoi спасибо, но это не все((((
где-то еще ошибка либо может я не правильно написал программу(((
Посмотри еще раз!!!
Прочитайте мое сообщение, пожалуйста.
XOR - логический оператор, а вы почему-то подумали, что это возведение в степень и теперь используете его в условиях. Соответственно они будут срабатывать/не срабатывать в разных случаях, что приведет к неправильному ответу.
Sapendo
5 / 5 / 3
Регистрация: 13.05.2014
Сообщений: 130
13.05.2014, 02:20  [ТС]     Определить, находится ли координата на "ободе", или за пределами, или внутри круга (найти ошибку) #8
uhr подскажите пожалуйста как прописывать тогда приведение в степень???
rikimaru2013
C++ Game Dev
 Аватар для rikimaru2013
2139 / 972 / 223
Регистрация: 30.11.2013
Сообщений: 3,241
13.05.2014, 02:21     Определить, находится ли координата на "ободе", или за пределами, или внутри круга (найти ошибку) #9
Цитата Сообщение от Sapendo Посмотреть сообщение
uhr подскажите пожалуйста как прописывать тогда приведение в степень???
x*x
Sapendo
5 / 5 / 3
Регистрация: 13.05.2014
Сообщений: 130
13.05.2014, 02:24  [ТС]     Определить, находится ли координата на "ободе", или за пределами, или внутри круга (найти ошибку) #10
rikimaru2013 это ясно я думал есть какой-то алгоритм типа sqrt(x+y)!
P.S. Если я не правильно выражаюсь, я прошу прощение!
rikimaru2013
C++ Game Dev
 Аватар для rikimaru2013
2139 / 972 / 223
Регистрация: 30.11.2013
Сообщений: 3,241
13.05.2014, 02:26     Определить, находится ли координата на "ободе", или за пределами, или внутри круга (найти ошибку) #11
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
#include <cmath>
#include <iostream>
 
using namespace std;
void main ()
{
    int R, x, y;
    cout<<"Input radius: \n";
    cin>>R;
    cout<<"Input x: \n";
    cin>>x;
    cout<<"Input y: \n";
    cin>>y;
 
    double TEMP = sqrt(x*x + y*y);
 
    if (R == TEMP)
        cout<<"Na obode\n";
    else if (R > TEMP)
        cout<<"V krygy\n";
    else 
        cout<<"Za krygom\n";
 
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.05.2014, 02:40     Определить, находится ли координата на "ободе", или за пределами, или внутри круга (найти ошибку)
Еще ссылки по теме:

"Чудеса типа float" или "Куда девалась информация?" C++
Нужно сделать так, чтобы при вводе числа, выводило "рублей" или "рубль" C++
C++ Исправить ошибку error C2228:выражение слева от ".leght" должно представлять класс, структуру или объединение

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

Или воспользуйтесь поиском по форуму:
Sapendo
5 / 5 / 3
Регистрация: 13.05.2014
Сообщений: 130
13.05.2014, 02:40  [ТС]     Определить, находится ли координата на "ободе", или за пределами, или внутри круга (найти ошибку) #12
rikimaru2013 супер, работает, огромное спасибо!!!!!
Пипец как же это просто теперь кажется)))))) только выражение "V krygy" и "Za krygom" нужно местами поменять))

Всем спасибо!!!!! rikimaru2013 особое спасибо)

Добавлено через 3 минуты
Ошибся выражение местам не надо менять!!!!
Yandex
Объявления
13.05.2014, 02:40     Определить, находится ли координата на "ободе", или за пределами, или внутри круга (найти ошибку)
Ответ Создать тему
Опции темы

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