profile
Опубликовано 5 лет назад по предмету Информатика от oxnan2014

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

  1. Ответ
    Ответ дан irka1804
    #include <iostream>
    #include <cmath>

    using namespace std;
    double dist(double x[2], double y[2]) {
        return sqrt((x[0] - y[0]) * (x[0] - y[0]) + (x[1] - y[1]) * (x[1] - y[1]));
    }

    int main() {
        double points[4][2];
        for (int i = 0; i != 4; ++i) {
             cin >> points[i][0] >> points[i][1];
        }
        double min = dist(points[0], points[1]);
        for (int i = 0; i != 4; ++i) {
             for (int j = i + 1; j != 4; ++j) { 
                  double new_min = dist(points[i], points[j]);
                  if (new_min < min) {
                       min = new_min;
                  }
             }
        }
        cout << min;
    }
Самые новые вопросы