Создайте функцию для вычисления расстояния между двумя точками, заданными их координатами x и y.
Мы напишем функцию getDistance
, которая будет принимать четыре целых числа (x1
, x2
, y1
и y2
) в качестве аргументов.
Нам даны координаты двух точек (x1, y1) и (x2, y2). Цель функции — вернуть расстояние между этими двумя точками.
Чтобы получить расстояние между этими двумя точками, мы используем следующую формулу:
dx – это разница между координатами x точек, а dy – разница между координатами y точек.
Пример:
getDistance(100, 100, 400, 300) // output: 360.5551275463989
В приведенном выше примере у нас есть точка 1: (100 400) и точка 2: (100 300)
Если мы получим значения x1
и x2
и вычтем разницу, мы получим dx². Если мы сделаем то же самое с y1
и y2
и вычтем разницу, мы получим yx².
Теперь мы можем использовать приведенную выше формулу, чтобы сложить разности x и y вместе, а затем извлечь из них корень, чтобы получить ответ.
Давайте переведем наш небольшой псевдокод выше в код.
Чтобы получить разницу между координатами x, мы вычитаем x2
из x1
и присваиваем его переменной с именем x
.
let y = x2 - x1;
То же самое делаем с координатами y:
let x = y2 - y1;
Используя приведенную выше формулу, возводим в квадрат x
и y
. После этого мы складываем их квадраты результатов вместе.
x * x + y * y
Затем, используя метод JavaScript из объекта Math, Math.sqrt()
, мы можем извлечь из полученного выше результата квадратный корень и вернуть его.
return Math.sqrt(x * x + y * y);
Вот полная функция:
Если вы нашли этот алгоритм полезным, ознакомьтесь с другими моими решениями по алгоритму JavaScript: