Задать вопрос
9 июля, 06:32

Дано множество точек с координатами на плоскости.

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

+3
Ответы (1)
  1. 9 июля, 06:54
    0
    Const

    nm = 50; {максимальная длина массива}

    type

    Mas = array[1 ... nm] of real;

    var

    i, j, n: integer;

    x, y: Mas;

    d, dmin: real;

    function SqrDist (p, q: integer) : real;

    { Возвращает квадрат расстояния между точками }

    begin

    SqrDist : = sqr (x[q] - x[p]) + sqr (y[q] - y[p])

    end;

    begin

    Write ('Введите количество точек - > ') ;

    Readln (n) ;

    Writeln ('Вводите координаты каждой точки (x, y) через пробел') ;

    for i : = 1 to n do

    begin

    Write ('точка ', i, ': ') ;

    Readln (x[i], y[i]) ;

    end;

    dmin : = 1e10; { значение, заведомо большее реально возможного }

    for i : = 1 to n do

    for j : = i + 1 to n do

    begin

    d : = SqrDist (i, j) ;

    if dmin > d then dmin : = d

    end;

    Writeln ('Минимальное расстояние между точками равно ', sqrt (dmin) : 0:4)

    end.

    Тестовое решение:

    Введите количество точек - > 5

    Вводите координаты каждой точки (x, y) через пробел

    точка 1: 3.4 7.2

    точка 2: - 3 8.6

    точка 3: - 4.5 - 5.1

    точка 4: 6 - 2

    точка 5: 0 9

    Минимальное расстояние между точками равно 3.0265
Знаете ответ на вопрос?
Не уверены в ответе?
Правильный ответ на вопрос 👍 «Дано множество точек с координатами на плоскости. Написать программу, которая использует подпрограммы и выведит на экран наименьшее ...» по предмету 📗 Информатика. Развернутая система поиска нашего сайта обязательно приведёт вас к нужной информации. Как вариант - оцените ответы на похожие вопросы. Но если вдруг и это не помогло - задавайте свой вопрос знающим оппонентам, которые быстро дадут на него ответ!
Искать готовые ответы