
Фадей
7 год назад
Дан целочисленный массив из 10 элементов. Элементы массива могут принимать произвольные значения. Опишите на языке программирования алгоритм, который находит и выводит номера двух элементов массива, наименее отличающихся друг от друга.
ОТВЕТЫ

Селунский
Jul 20, 2019
// PascalABC.NET 3.2, сборка 1353 от 27.11.2016
// Внимание! Если программа не работает, обновите версию!
begin
var n:=10;
var a:=ArrRandom(n,1,99); a.Println;
var d:=100;
var i1,i2:integer;
for var i:=0 to n-2 do
for var j:=i+1 to n-1 do begin
var dd:=abs(a[i]-a[j]);
if ddlt;d then begin d:=dd; i1:=i; i2:=j end
end;
Writeln(Элементы ,i1+1,, ,i2+1)
end.
Пример
47 55 18 58 16 77 43 95 13 86
Элементы 3, 5
// Внимание! Если программа не работает, обновите версию!
begin
var n:=10;
var a:=ArrRandom(n,1,99); a.Println;
var d:=100;
var i1,i2:integer;
for var i:=0 to n-2 do
for var j:=i+1 to n-1 do begin
var dd:=abs(a[i]-a[j]);
if ddlt;d then begin d:=dd; i1:=i; i2:=j end
end;
Writeln(Элементы ,i1+1,, ,i2+1)
end.
Пример
47 55 18 58 16 77 43 95 13 86
Элементы 3, 5
31