Для вычисления расстояния между точками используется теорема Пифагора:
$$distance = sqrt$$ Записать соотстветсующую функцию на языке С++ можно так:
#include #include using namespace std; double distance(double a_x, double a_y, double b_x, double b_y) < double dx = a_x-b_x, dy = a_y-b_y; return sqrt(dx*dx + dy*dy); >int main() < double a_x, a_y; cout > a_x >> a_y; cout
Можете улучшить код введя структуру Position :
#include #include using namespace std; struct Position < double x, y; Position(double _x, double _y) : x(_x), y(_y) < >>; istream>(istream position) < ist >> position.x >> position.y; return ist; > double distance(const Position b) < double dx = a.x-b.x, dy = a.y-b.y; return sqrt(dx*dx + dy*dy); >int main() < Position pos(0, 0); cout > pos; cout
PS. Можно посмотреть как аналогичная задача решается на SWI Prolog.
22.06.2021 в 07:25 #8114
Аналогичный код на Си:
#include #include #include struct Position < double x, y; >; double distance(struct Position a, struct Position b) < double dx = a.x-b.x, dy = a.y-b.y; return sqrt(dx*dx + dy*dy); >struct Position createPoint2D(double x, double y) < struct Position point; point.x = x; point.y = y; return point; >struct Position readPoint2D() < struct Position point; printf(«x: «); scanf(«%lf», printf(«y: «); scanf(«%lf», return point; >void printPosition(struct Position point)
C++ | Расстояние между точками в С++
Просмотр 1 ветки ответов
Источник: pro-prof.com
Расстояние между двумя точками программа на си
Сообщений: 26,238
это он так возведение в степень хотел написать!
Dimitrii23
попробуйте заменить эту строчку либо на такую:
d=sqrt(pow(x1-x2, 2)+pow(y1-y2, 2));
либо на такую
d=sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2));
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Расстояние между точками | tatiana2472 | Помощь студентам | 14 | 02.06.2013 23:22 |
Паскаль найти МИНИМАЛЬНОЕ расстояние между 3 точками, как дальше? | Вида)) | Паскаль, Turbo Pascal, PascalABC.NET | 1 | 21.12.2012 01:51 |
Расстояние между точками | bumer7721 | Помощь студентам | 22.03.2012 19:16 | |
СИ Найти наименьшее расстояние между точками | savra | Помощь студентам | 2 | 19.04.2011 10:16 |
Расстояние между точками (Delphi) | КатюФа | Помощь студентам | 3 | 04.05.2010 14:52 |
Определение расстояния между двумя точками на Земле (Между координатами) с помощью python
Источник: www.programmersforum.ru
Расстояние между точками
На этой странице находится все необходимое, чтобы найти расстояние между двумя точками. Просто введите координаты точек и получите ответ и подробное решение с помощью наших онлайн-калькуляторов. Кроме того на сайте можно найти координаты середины отрезка.
Расстояние между двумя точками — это длина отрезка, соединяющего эти точки.
Формула расстояния между двумя точками на плоскости:
xa и ya — координаты первой точки A,
xb и yb — координаты второй точки B
Нахождение расстояния между двумя точками на плоскости сводится к решению треугольника, а точнее — нахождению его гипотенузы. Для этого используется теорема Пифагора. Посмотрите на рисунок.
Соединив отрезком точки A и B, а также опустив перпендикуляры на оси мы получим треугольник ABC. В этом треугольнике стороны AC и BC являются катетами прямоугольного треугольника, а AB — его гипотенузой. Длины катетов AC и BC найти довольно просто:
Осталось применить теорему Пифагора и получить сторону AB, которая является гипотенузой прямоугольного треугольника и расстоянием между точками A и B:
Подставив вместо отрезков AC и BC их длины, получим итоговую формулу расстояния между двумя точками:
Формула расстояния между двумя точками в пространстве:
xa, ya и za — координаты первой точки A,
xb, yb и zb — координаты второй точки B
Примеры задач на вычисление середины отрезка
Найдите расстояние между точками А и В, если А(2; 7), В(-2; 7).
Подставим координаты точек в формулу расстояния между двумя точками на плоскости и вычислим результат: