
C/C++
Помогите с задачей на С++, умоляю
Фото ниже


#include <iostream>
using namespace std;
int main() {
unsigned n, m, x, y;
cin >> n >> m >> x >> y;
auto nn = 0;
auto nx = n - x < x? n - x : x;
auto my = m - y < y? m - y : y;
auto length = nx < my? nx : my;
cout << length << endl;
system("pause > nul");
}
using namespace std;
int main() {
unsigned n, m, x, y;
cin >> n >> m >> x >> y;
auto nn = 0;
auto nx = n - x < x? n - x : x;
auto my = m - y < y? m - y : y;
auto length = nx < my? nx : my;
cout << length << endl;
system("pause > nul");
}
это че за христианское программирование?)
Кир Елисеев
Вот такое вот задают теперь, но решить то как? Помоги пожалуйста, уже наверное час 3 пошел
а может сравнишь Х и У и выберешь меньшее? А с какой стороны плыть всё равно не указано. Привет небесной канцелярии
Сергей Бражкин
Аналог задачи про Яшу, который плавал в бассейне.
Сергей Бражкин
Аналогия неполная: по значениям X и Y Яша вполне способен оказаться вне воды, а вот шахматная доска — нет.
Привет!
Аналогичная задача есть на Степике: условие другое, но решение точно то!
В первую очередь нужно упорядочить пару N и M. Это нужно, чтобы конкретно одна обозначала короткую сторону, другая — длинную. При необходимости — обменять значения N и M местами.
Кроме чисел x и y нужно вычислить ещё два числа — не заданные расстояния до сторон (до противоположных). Осталось перебрать числа x, y и два вычисленных и выбрать из них наименьшее — это и есть решение.
Дело в том, что наименьшее расстояние до доски всё равно определяется вдоль одной из сторон проруби — это следствие того, что прорубь прямоугольная.
Попробуйте нарисовать прямоугольник, выберите внутри любую точку. Начертите окружность с центром в этой точке, радиус выберите так, чтобы одна из точек окружности лежала на контуре прямоугольника. Если такая точка только одна, то радиус и есть наименьшее расстояние от точки до контура прямоугольника. До остальных точек прямоугольника дальше. Убедитесь, что в таком случае радиус перпендикулярен одной из сторон прямоугольника.
Аналогичная задача есть на Степике: условие другое, но решение точно то!
В первую очередь нужно упорядочить пару N и M. Это нужно, чтобы конкретно одна обозначала короткую сторону, другая — длинную. При необходимости — обменять значения N и M местами.
Кроме чисел x и y нужно вычислить ещё два числа — не заданные расстояния до сторон (до противоположных). Осталось перебрать числа x, y и два вычисленных и выбрать из них наименьшее — это и есть решение.
Дело в том, что наименьшее расстояние до доски всё равно определяется вдоль одной из сторон проруби — это следствие того, что прорубь прямоугольная.
Попробуйте нарисовать прямоугольник, выберите внутри любую точку. Начертите окружность с центром в этой точке, радиус выберите так, чтобы одна из точек окружности лежала на контуре прямоугольника. Если такая точка только одна, то радиус и есть наименьшее расстояние от точки до контура прямоугольника. До остальных точек прямоугольника дальше. Убедитесь, что в таком случае радиус перпендикулярен одной из сторон прямоугольника.
Кир Елисеев
я уже сделал на 57%, спасибо. что все расписали, но пока что голова не варит совсем
Snake Snakovski
Если Вы уже изучали одномерные массивы, то можно объявить массив из четырёх элементов и перебрать их в цикле.
Похожие вопросы
- УМОЛЯЮ!!!!! Помогите решить задачу на C++
- Помогите решить задачу по программированию на C++
- СРОЧНО! Помогите с задачей.
- ПОМОГИТЕ С ЗАДАЧЕЙ НА C++
- Помогите решить задачу по C++!
- Помогите решить задачу по программированию
- Помогите решить задачу пожалуйста, в C++
- Помогите решить задачу на c++
- Помогите с задачей на языке СИ
- Помогите решить задачу на С++ (мне не совсем ясен смысл задания)
Не понял!!! А переменная nn зачем???