• Напишите программу, которая заполняет массив из N элементов случайными целыми числами в диапазоне [ A , B ] и определяет номера двух элементов этого массива, которые расположены ближе всех друг к другу на числовой оси. Эти элементы не обязательно должны быть расположены рядом друг с другом. Если таких пар несколько, нужно вывести номера элементов самой последней из таких найденных пар.

    Входные данные
    Входная строка содержит три числа: границы диапазона случайных чисел A и B , а также размер массива N . Все числа разделены пробелами. Гарантируется, что 0 < N ≤ 10000 .

Ответы 1

  • const  n = 50;// количество чиселvar  k: array [1..n] of integer;  i, j, n1, n2, minr, A, B: integer;begin  writeln(n, ' ', ':D');  A := random(1000);  B := random(1000);  minr := 10000;  for i := 1 to n do    k[i] := A + random(B);  for i := 1 to n do    for j := 1 to n do      if ((abs(k[i] - k[j])) < minr) and (k[i] <> k[j]) then      begin        minr := abs(k[i] - k[j]);        n1 := i;        n2 := j;      end;  writeln(n1, ' ', n2);end.
    • Автор:

      talan
    • 6 лет назад
    • 0
  • Добавить свой ответ

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years