Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
 
0 / 0 / 0
Регистрация: 14.08.2018
Сообщений: 2
1

Расстояние между точками

14.08.2018, 14:27. Просмотров 311. Ответов 12
Метки нет (Все метки)

Клеточное поле образовано вертикальными и горизонтальными прямыми так, что первая прямая находится на расстоянии i от параллельной ей прямой. Точки пересечения прямых пронумерованы против часовой стрелки по периметру квадратов. Найти расстояние между двумя любыми точками, заданными своими номерами, а также координатами этих точек.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
14.08.2018, 14:27
Ответы с готовыми решениями:

Расстояние между точками
Дана задача На плоскости заданы n точек: (x1,y1), (x2,y2)… (xn,yn). Найти наименьшее из расстояний...

Вычислить расстояние между двумя точками
вычислить расстояние между двумя точками с координатами (х1,х2) и (у1,у2). Координаты вводятся с...

Найти расстояние между двумя любыми точками
Клеточное поле образовано вертикальными и горизонтальными прямыми так, что первая прямая находится...

Найти расстояние между двумя точками на плоскости
#include <stdio.h> #include <conio.h> #include <stdlib.h> #math.h main() { int...

12
5967 / 2094 / 736
Регистрация: 10.12.2010
Сообщений: 5,914
Записей в блоге: 3
14.08.2018, 14:30 2
Вот тут Найти расстояние между двумя любыми точками автор говорит что у него есть решение, спросите
0
0 / 0 / 0
Регистрация: 14.08.2018
Сообщений: 2
14.08.2018, 14:50  [ТС] 3
Автор говорит, что доступа к коду не будет ещё недели 3, а мне нужно сдать его к концу августа
0
1050 / 632 / 442
Регистрация: 25.04.2016
Сообщений: 1,748
15.08.2018, 08:44 4
Расстояние отрезков A-B и B-C равно i по определению задачи. Расстояние A-C находится по теореме Пифагора. sqrt(i*i + i*i); Если вам известны координаты точек, то все еще проще, находите расстояние между двумя точками на плоскости, и все.

А расстояние между двумя точками на плоскости находится точно так же по теореме Пифагора.
Для точек A(x1, y1) и B(x2, y2) расстояние будет
sqrt((x2-x1)*(x2-x1) + (y2-y1)*(y2-y1));

Остается лишь оформить в виде кода. У меня например, ум за разум заходит, когда читаю: "пронумерованы против часовой стрелки по периметру квадратов", - ну допустим, один квадрат мы пронумеровали.. а с какого квадрата начинать нумерацию в сетке, и каким числом? С 0? С 1? С числа пи?
1
Миниатюры
Расстояние между точками  
1050 / 632 / 442
Регистрация: 25.04.2016
Сообщений: 1,748
15.08.2018, 08:56 5
Опять же, нумерация против часовой стрелки - это лишь направление нумерации, а с какой точки в квадрате начинать нумерацию? C верхней-левой? С нижней правой?.. хочется придушить автора задачи б.у. портянками времен столетней войны.
0
Эксперт C
23473 / 14713 / 3098
Регистрация: 24.12.2010
Сообщений: 31,385
15.08.2018, 09:33 6
stake-k26, конечно, условие задачи несколько расплывчатое, но можно предположить нумерацию по "естественной" спирали типа (0,0) (1,0) (1,1) (0,1) (-1,1) ((-1,0) (-1,-1) (0,-1) (1,-1) (2,-1) (2,0) .....

Добавлено через 1 минуту
В этом случае
Цитата Сообщение от stake-k26 Посмотреть сообщение
с какой точки в квадрате начинать нумерацию?
не имеет значения.
0
1050 / 632 / 442
Регистрация: 25.04.2016
Сообщений: 1,748
15.08.2018, 10:36 7
Цитата Сообщение от Байт Посмотреть сообщение
не имеет значения.
Тут не соглашусь, тогда какой смысл вообще нумеровать точки?

Т.е. в пределах одного квадрата да, не имеет значения, а вот если смотреть на всю сетку, состоящую из множества квадратов, то очень большое значение. Особенно если нужно найти расстояние между точками, принадлежащими разным квадратам.
0
1050 / 632 / 442
Регистрация: 25.04.2016
Сообщений: 1,748
15.08.2018, 11:01 8
По сути можно мысленно построить прямоугольник с вершинами в заданных точках, и посмотреть что у нас получается, прямая или прямоугольник. в случае с прямой останется только посчитать сколько i между точками, а в случае прямоугольника посчитать сколько i в каждом из катетов.

Т.е. вот например, три случая: случай А - прямоугольник, случаи B и C - прямые. Ну, тут понятно, что прямоугольник не обязательно должен быть квадратом, нам главное знать сколько i в каждой из сторон.
0
Миниатюры
Расстояние между точками  
1050 / 632 / 442
Регистрация: 25.04.2016
Сообщений: 1,748
15.08.2018, 11:15 9
Причем условие задачи на столько по-тупому составлено, что приходится учитывать 4 возможных случая:

1. Когда точка лежит в точке, т.е. координаты обеих точек совпадают.
2. Когда обе точки лежат в узлах сетки
3. Когда одна точка лежит в узле, а вторая располагается произвольно
4. Когда обе точки располагаются произвольно

Поскольку в условии нет ни слова о том, что точки будут располагаться только в узлах сетки.
0
Эксперт C
23473 / 14713 / 3098
Регистрация: 24.12.2010
Сообщений: 31,385
15.08.2018, 11:38 10
stake-k26, Конечно, провангировать это задание - та еще работка! Но поскольку мы за это взялись...
Я бы ее сформулировал так.
Есть квадратная сетка. Ее узлы пронумерованы спиральным образом. Найти расстояние между двумя узлами, заданными своими номерами
Цитата Сообщение от AndrewDnoVProge Посмотреть сообщение
Точки пересечения прямых(узлы) пронумерованы (видимо, спирально). Найти расстояние между двумя любыми узлами, заданными своими номерами
Тогда задача сводится к нахождению x-, y- координат узла по его номеру.
0
1050 / 632 / 442
Регистрация: 25.04.2016
Сообщений: 1,748
15.08.2018, 12:13 11
Цитата Сообщение от AndrewDnoVProge Посмотреть сообщение
Найти расстояние между двумя любыми точками, заданными своими номерами, а также координатами этих точек.
Т.е. может попасться условие когда:
1. первая точка - №16, а вторая - №11,
2. первая точка - №16, а вторая - 76, 12
3. первая точка - 12, 21, а вторая - 76, 12..

И как тут ввод делать? Когда число координат может варьироваться от 2 до 4? Я бы просто послал преподавателя драить сортиры своими заданиями - рановато ему преподавать.

Мы делили апельсин. Много наших полегло. Сколько листьев было на второй березе?

Добавлено через 10 минут
AndrewDnoVProge, настоятельно рекомендую вам дать ссылку на эту тему своему преподавателю.
0
Эксперт C
23473 / 14713 / 3098
Регистрация: 24.12.2010
Сообщений: 31,385
15.08.2018, 16:24 12
stake-k26, Кажется понял вас. Вас смутило это.
Цитата Сообщение от AndrewDnoVProge Посмотреть сообщение
а также координатами этих точек.
Без этой фразы еще можно попытаться что-то понять. Но ее появление значительно усложняет наши попытки. Вангование (если, конечно, охота им заниматься) может идти по разным направлениям. Одно из них - отбрасывание разного бреда.
1
1050 / 632 / 442
Регистрация: 25.04.2016
Сообщений: 1,748
15.08.2018, 17:56 13
Байт, так и есть, без этого уточнения можно было бы предположить, что речь идет только о точках, располагающихся в узлах сетки. А так.. широчайший простор для фантазии. Если точнее, появление этой фразы сразу же делает ненужной сетку. Зачем сетка? Когда нам доступен весь диапазон координат от минус бесконечности до плюс..
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
15.08.2018, 17:56

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Написать Функцию, определяющую расстояние между точками
Здравствуйте.Нужна помощь.Задание решил, но пару пунктов не понял. Собственное вот задание:...

Вычислить расстояние между двумя точками с заданными координатами
Вычислить расстояние между двумя точками с координатами x1, y1 и x2, y2. Исходные данные и...

Рассчитать расстояние между двумя точками в трехмерном пространстве
Здравствуйте, существует проблема с вводом чисел. Вот задание: "Рассчитать расстояние между двумя...

Вычислить расстояние между двумя точками с данными координатами
Задача №1. Вычислить расстояние между двумя точками с данными координатами (х1,у1) и (х2,у2). ...


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

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.