|
3 / 3 / 0
Регистрация: 11.12.2010
Сообщений: 6
|
|
Расстояние15.12.2010, 04:43. Показов 3289. Ответов 11
Метки нет (Все метки)
На плоскостисвоими координатами задано N точек. Рассмотрим набор прямых, проведенных через все различные пары точек. Необходимоопределить наибольшеевозможноерасстояниеотлюбой заданной точки, до любой прямойпостроеннойподвумдругим точкам.
Задание Напишите программу DIST, котораяпонабору точек плоскостивычисляет максимальноерасстояниеот точки до прямой. Входные данные Перваястрокавходного файлаDIST.DATсодержитединственное целое число – количество точек N (3≤N≤700) заданных на плоскости. ДалееследуетNстрок, каждаяиз которых задает точку плоскостив формате “x y” (-5000≤x, y≤5000), x и y – целые числа. Никакие две точки не имеют одинаковых координат. Выходные данные Единственная строкавыходного файлаDIST.SOLдолжнасодержать наибольшеерасстояниеот однойиз заданных точек, до прямой,построенной на двух других точках, с точностью до 10-6. Ответдолжен быть записан в форматес точкой (<целая часть>.<дробная часть>) Пример входных и выходных данных DIST.DAT DIST.SOL 5 1 4 2 0 2 4 3 5 4 4 4.242641 уровнение прямой ax+b=y; далее: (x2-x1)/(x-x1)=(y2-y1)/(y-y1); a=(y2-y1)/(x2-x1); b=-ax1+y1; вот только я не пойму как прочертить линию от любой точки до прямой под 90 градусом?
0
|
|
| 15.12.2010, 04:43 | |
|
Ответы с готовыми решениями:
11
Найти расстояние от начала координат до каждой точки и расстояние между точками Расстояние между двумя множествами точек - это расстояние между наиболее близко расположенными точками этих Скорость первого автомобиля V1 км/ч, второго — V2 км/ч, расстояние между ними S км. Определить расстояние между ними через T часов, если автомобили пе |
|
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
|
|
| 15.12.2010, 05:09 | |
|
0
|
|
|
3 / 3 / 0
Регистрация: 11.12.2010
Сообщений: 6
|
|
| 19.12.2010, 12:09 [ТС] | |
|
ОК! Понял, но у меня возник такой вопрос,
а что делать, если координаты двух точек (x1,y1)=(-50,150) (x2,y2)=(-50,-150) то когда находим уравнение прямой то, a=(y2-y1)/(x2-x1); a=(-150-150)/(-50-(-50)) => -300/0, и что тогда?
0
|
|
|
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
|
|
| 20.12.2010, 03:05 | |
|
вот с wiki
0
|
|
|
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
|
|
| 20.12.2010, 03:52 | |
|
(x1,y1)=(-50,150)
(x2,y2)=(-50,-150) это прямая x = -50 переносим x + 50 = 0 восстанавливаем x + 0 * y + 50 = 0 по формуле с wiki (150 - (-150)) * x + (-50 - (-50)) * y + ((-50 * -150) - (-50 * 150)) = 0 300 * x + 0 * y + (7500 + 7500) = 0 | : 300 x + 0 * y + 50 = 0
0
|
|
|
3225 / 1752 / 436
Регистрация: 03.05.2010
Сообщений: 3,867
|
||||||
| 20.12.2010, 18:23 | ||||||
0
|
||||||
|
481 / 119 / 17
Регистрация: 30.09.2010
Сообщений: 473
|
|||||||
| 20.12.2010, 19:27 | |||||||
|
Расстояние от точки до прямой на плоскости проще всего определить через кососкалярное произведение:
0
|
|||||||
|
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
|
|
| 21.12.2010, 06:56 | |
|
там на wiki есть расстояние от точки до прямой
просто модуль берётся
0
|
|
|
481 / 119 / 17
Регистрация: 30.09.2010
Сообщений: 473
|
|
| 21.12.2010, 11:39 | |
|
Есть то оно есть, только вот не всем под силу ей воспользоваться, и это вполне естественно.
Собственно, моя формула представляет ее же, только до раскрытия скобок и приведения подобных членов (хренотени со знаком не понял, и разбираться не хочу), и в этом виде формула не только готова к употреблению, но и понятна, и даже не выводится, а просто выписывается за 30 секунд при необходимости. Надо только заметить, что она представляет собой скалярное произведение вектора (x1,y1)->(x,y) на нормированный перпендикуляр к вектору (x1,y1)->(x2,y2). Не, ну если кто вращать вектора не умеет и скалярные произведения вычислять, то тогда в Википедию, а лучше сразу в морг <где тут свистящий смайлик?>
0
|
|
|
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
|
||
| 22.12.2010, 04:15 | ||
0
|
||
|
481 / 119 / 17
Регистрация: 30.09.2010
Сообщений: 473
|
|
| 22.12.2010, 12:21 | |
|
То, что она называется общей, не значит, что она всему голова. На самом деле общее уравнение выводится из канонического, параметрического или (на плоскости) из того, что я написал, т.е. из способов задания, для которых влияние задающих элементов более прозрачно. На практике пользоваться общим уравнением не удобно. Ты можешь, взглянув на общее уравнение, сразу, без вычислений и прикидок, представить, как прямая проходит? Вот то-то.
0
|
|
|
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
|
||||||||||||||||||||||||||||
| 23.12.2010, 07:57 | ||||||||||||||||||||||||||||
2*x + 4*y - 7 = 0
0
|
||||||||||||||||||||||||||||
| 23.12.2010, 07:57 | |
|
Помогаю со студенческими работами здесь
12
Расстояние Расстояние в дереве Эвклидово расстояние. Расстояние на графе
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): сборка C/C++ проекта из консоли
8Observer8 31.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
Установка Emscripten SDK (emsdk) и CMake на Windows для сборки C и C++ приложений в WebAssembly (Wasm)
8Observer8 30.01.2026
Чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. Система контроля версиями Git. . .
|
Подключение Box2D v3 к SDL3 для Android: физика и отрисовка коллайдеров
8Observer8 30.01.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
|
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования.
Часть библиотеки BedvitCOM
Использованы. . .
|
|
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога
SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
|
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога
SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
|
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
|
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога
SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
|