
C/C++
Можете помочь решить задачу по программированию.
Нельзя использовать if else. Только через флаги, тру и фолс


x >= 0 ? ( y >= 0? x*x + y*y <= 16 : x <= 4 && y >= -4 ) : x >= -1 && y <= 0 && y >= -4
German Freid
x >= -2
Юрий Дубовский
x*x + y*y <= 16 раз уж на то пошло.
С сектором окружности ничего не поделать, а вот проверку прямоугольника можно сделать иначе - если сдвинуть пересечение координатных осей в центр прямоугольника:
abs(y + 2) <= 2 && abs(x - 1) <= 3 || x >= 0 && y >= 0 && x * x + y * y <= 16
abs(y + 2) <= 2 && abs(x - 1) <= 3 || x >= 0 && y >= 0 && x * x + y * y <= 16
#include <iostream>
#include <cmath>
using namespace std;
double real(const char* msg) {
cout << msg;
double value;
cin >> value;
cin.ignore(cin.rdbuf()->in_avail());
return value;
}
double radius(const double x, const double y) {
return sqrt(x * x + y * y);
}
int main() {
const auto x = real("x: ");
const auto y = real("y: ");
const auto m = (x >= 0 && y >= 0 && radius(x, y) <= 4)
|| (y <= 0 && y >= -4 && x >= -2 && x <= 4);
cout << boolalpha << m << '\n';
system("pause > nul");
}
#include <cmath>
using namespace std;
double real(const char* msg) {
cout << msg;
double value;
cin >> value;
cin.ignore(cin.rdbuf()->in_avail());
return value;
}
double radius(const double x, const double y) {
return sqrt(x * x + y * y);
}
int main() {
const auto x = real("x: ");
const auto y = real("y: ");
const auto m = (x >= 0 && y >= 0 && radius(x, y) <= 4)
|| (y <= 0 && y >= -4 && x >= -2 && x <= 4);
cout << boolalpha << m << '\n';
system("pause > nul");
}
double xx,yy;
cout << "Введите xy= "; cin >> xx; cin >> yy;
double R= xx*xx+yy*yy;
((xx>=0.0 && xx<=4.0 && yy>=0.0 && R<=16.0) || (yy<=0.0 && xx<=4.0 && xx>=-2.0)) ? cout << 1 : cout << 0;
cout << "Введите xy= "; cin >> xx; cin >> yy;
double R= xx*xx+yy*yy;
((xx>=0.0 && xx<=4.0 && yy>=0.0 && R<=16.0) || (yy<=0.0 && xx<=4.0 && xx>=-2.0)) ? cout << 1 : cout << 0;
x >= -2 && x <=4 && y <= 0 && y >= -4 || x * x + y * y <= 16
может даже так... если уж совсем без if else
upd: x >= -2 && x <=4 && y <= 0 && y >= -4 || x * x + y * y <= 16 && x >= 0 && y >= 0
может даже так... если уж совсем без if else
upd: x >= -2 && x <=4 && y <= 0 && y >= -4 || x * x + y * y <= 16 && x >= 0 && y >= 0
Kolia Ololoev
хотя нет, во второй части забыл x > 0 && y > 0
Похожие вопросы
- Помогите решить задачу по программированию на C++
- Помогите решить задачу по программированию
- Помогите решить задачу по программированию C++
- Помогите решить задачу на языке программирования С++
- Помогите решить задачу на языке программирования Си, пожалуйста
- Программирование C++ Помогите решить задачу
- Помогите решить задачу по C++!
- Помогите решить задачу пожалуйста, в C++
- Помогите решить задачу на c++
- Помогите решить задачу на С++ (мне не совсем ясен смысл задания)