Помогите с расстоянием точек

На самом деле я Zodiak
Участник
Статус
Оффлайн
Регистрация
22 Дек 2020
Сообщения
1,004
Реакции[?]
180
Поинты[?]
67K
Как рассчитать расстояние на экране между центром экрана и случайной точкой ?

Через теорму пифагора искать гипотенузу ? Или может какие то ещё варианты?

asd.png
 
Забаненный
Статус
Оффлайн
Регистрация
1 Янв 2021
Сообщения
21
Реакции[?]
2
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
пифагор
 
Эксперт
Статус
Оффлайн
Регистрация
13 Сен 2020
Сообщения
1,415
Реакции[?]
712
Поинты[?]
9K
Участник
Статус
Оффлайн
Регистрация
29 Дек 2019
Сообщения
381
Реакции[?]
168
Поинты[?]
3K
C++
Забаненный
Статус
Оффлайн
Регистрация
3 Окт 2019
Сообщения
658
Реакции[?]
129
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
1655836245527.png
Теорема Пифагора из 8 класса. (возможно кстати не правильно решил)))))
 
Pa$$ter
Пользователь
Статус
Оффлайн
Регистрация
9 Июн 2020
Сообщения
240
Реакции[?]
83
Поинты[?]
12K
math.sqrt( math.pow( x2 - x1, 2 ) + math.pow( y2 - y1, 2 ) )
только лучше всё-таки без pow, через (x2-x1)*(x2-x1) + (y2-y1)*(y2-y1), т.к. функция возведения в степень имеет кучу логики которая тебе в данном случае не нужна.
 
Эксперт
Статус
Оффлайн
Регистрация
14 Июл 2019
Сообщения
1,101
Реакции[?]
496
Поинты[?]
31K
только лучше всё-таки без pow, через (x2-x1)*(x2-x1) + (y2-y1)*(y2-y1), т.к. функция возведения в степень имеет кучу логики которая тебе в данном случае не нужна.
Чего бля?)
 
Pa$$ter
Пользователь
Статус
Оффлайн
Регистрация
9 Июн 2020
Сообщения
240
Реакции[?]
83
Поинты[?]
12K
Math.pow / powf и.т.п поддерживают выполнение операций с дробными и отрицательными степенями, и делают сначала проверки на это, это лишняя логика которая тебе в данном случае совершенно не нужна, т.к. для положительных целых степеней x**2 == x*x
 
На самом деле я Zodiak
Участник
Статус
Оффлайн
Регистрация
22 Дек 2020
Сообщения
1,004
Реакции[?]
180
Поинты[?]
67K
float 2dDistance(int x1, int y1, int x2, int y2)
{
return sqrt(pow(x2 - x1, 2) + pow(y2 - y1, 2));
}
 
Эксперт
Статус
Оффлайн
Регистрация
30 Дек 2019
Сообщения
1,970
Реакции[?]
958
Поинты[?]
19K
Сверху Снизу