Прямые под 45 градусов
Не могу найти ошибку в своём коде. Задача со степика. Не проходит 3 тест.
Напишите программу, при выполнении которой с клавиатуры считываются координаты точки на плоскости (x, y - действительные числа) и определяется принадлежность этой точки заданной заштрихованной области (включая границы). В случае, если точка внутри заштрихованной области -- выведите слово "Inside", если снаружи - "Outside".
Мой код:
#include <iostream>
using namespace std;
int main() {
double x, y;
cin >> x >> y;
bool a = (y <= 3) && (y >= -x - 4) && (x <= 3);
bool b = (y <= 1) && (y >= -x - 2) && (x <= 1);
if (a && !b) {
cout << "Inside";
} else {
cout << "Outside";
}
return 0;
}
Ответы (1 шт):
Автор решения: Qwertiy
→ Ссылка
В переменной b лежит принадлежность токи внутреннему треугольнику с его границей, а надо без границы. Поменяй нестрогие неравенства на строгие.
PS: И не надо лишние скобки ставить - тут не паскаль.
