Напишите программу определяющую евклидово расстояние между двумя точками координаты которых заданы
Перейти к содержимому

Напишите программу определяющую евклидово расстояние между двумя точками координаты которых заданы

  • автор:

Напишите программу определяющую евклидово расстояние между двумя точками координаты которых заданы

Скачай курс
в приложении

Перейти в приложение
Открыть мобильную версию сайта

© 2013 — 2023. Stepik

Наши условия использования и конфиденциальности

Get it on Google Play

Public user contributions licensed under cc-wiki license with attribution required

Максимальное расстояние между двумя точками

Даны число n и координаты n точек. Создать приложение, которое определит максимальное расстояние
между двумя точками и укажет между которыми.

94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Ответы с готовыми решениями:

Расстояние между двумя точками
Напишите код, который находит расстояние между двумя точками на плоскости по координатам этих.

Расстояние между двумя точками
Прошу помощи, я решил задачу, как знал, а именно: def distance_space(coords): distance_x = ().

Максимальное расстояние между точками
Четыре точки заданы своими координатами X(x1, x2), Y(y1, y2), Z(z1, z2), P(p1, p2). Выяснить, какие.

Найти расстояние между двумя точками с заданными координатами
Найти расстояние между двумя точками с заданными координатами х1, и х2 на числовой оси

680 / 301 / 76
Регистрация: 10.04.2012
Сообщений: 1,131
Записей в блоге: 2

1 2 3 4 5 6 7 8 9 10 11 12 13 14
import numpy as np n = 10 # количество точек def r(x1,y1,x2,y2): # Евклидово расстояние return( ((x1-x2)**2 + (y1-y2)**2)**0.5 ) a = np.random.randint(10, 99, size = (n, 2)) # массив с координатами точек: x,y print(a) lst = [r(a[i,0],a[i,1],a[j,0],a[j,1]) for i in range(n) for j in range(n)] # Список расстояний ind = [str(i) + ' ' + str(j) for i in range(n) for j in range(n)][lst.index(max(lst))].split() m = list(map(int, ind)) # номера точек, между которыми расстояние максимальное print(f'Максимальное расстояние , между точками (,) и (,)')

Вирусоборец

13179 / 6989 / 1471
Регистрация: 06.09.2009
Сообщений: 25,898

VistaSV30, лучше находить максимум из квадратов расстояний и только при выводе ответа извлекать корень.

680 / 301 / 76
Регистрация: 10.04.2012
Сообщений: 1,131
Записей в блоге: 2
thyrex, спасибо.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
import time import numpy as np n = 10 # количество точек def r(x1,y1,x2,y2): # Евклидово расстояние return( ((x1-x2)**2 + (y1-y2)**2) ) start_time = time.time() a = np.random.randint(10, 99, size = (n, 2)) # массив с координатами точек: x,y print(a) lst = [r(a[i,0],a[i,1],a[j,0],a[j,1]) for i in range(n) for j in range(n)] # Список расстояний ind = [str(i) + ' ' + str(j) for i in range(n) for j in range(n)][lst.index(max(lst))].split() m = list(map(int, ind)) # номера точек, между которыми расстояние максимальное print(f'Максимальное расстояние , между точками (,) и (,)') print("--- %s seconds ---" % (time.time() - start_time))

Ради научного интереса замерил время при различных вариантах.
Результаты:
При n=10
0.003000020980834961 seconds — извлечение корня в функции
0.003000497817993164 seconds — извлечение корня в результатах

При n=100
0.07000398635864258 seconds
0.03200173377990723 seconds

Напишите программу определяющую евклидово расстояние между двумя точками координаты которых заданы

Скачай курс
в приложении

Перейти в приложение
Открыть мобильную версию сайта

© 2013 — 2023. Stepik

Наши условия использования и конфиденциальности

Get it on Google Play

Public user contributions licensed under cc-wiki license with attribution required

Евклидово расстояние

На плоскости евклидово расстояние между двумя точками (x1; y1) и (x2​;y2​) определяется так:

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

Формат входных данных
На вход программе подается четыре вещественных числа, каждое на отдельной строке – x1, y1, x2, y2​​.

Формат выходных данных
Программа должна вывести одно число – евклидово расстояние.

import math x1, x2, y1, y2 = float(input()), float(input()), float(input()), float(input()) print(math.hypot(x1 - y1, x2 - y2))

Похожие записи:
  1. Django — доработка шаблона формы регистрации
  2. Манхэттенское расстояние
  3. Рассчитать массу, плотность или объем
  4. Абсолютная сумма

Добавить комментарий Отменить ответ

«Словарь терминов по изобразительному искусству. Живопись. Графика. Скульптура» включает более четырехсот искусствоведческих терминов и

Для Джин Хэйнс краски – это сокровища, а кисть – волшебная палочка, с помощью
«Из всех богов лишь Смерть к дарам бесчувственна…» однако некоторые люди умеют ей угодить.

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *