Заполните массив случайными числами в интервале [0,1000] и выведите номера двух соседних элементов, произведение которых наибольшее паскаль. выполнить с рандома
Const K = 7; Var A:array[1..K] of integer; i,n:integer; Begin For i:= 1 to K do Begin A[i]:=random(1001); Write(A[i],' '); End; WriteLn; n:=1; For i:= 2 to K-1 do if A[i]*A[i+1]>A[n]*A[n+1] then n:=i; WriteLn(n,' и ',n+1) End.
// PascalABC.NET 3.2, сборка 1389 от 01.03.2017 // Внимание! Если программа не работает, обновите версию!
begin var a:=ArrRandom(ReadInteger('n='),0,1000); a.Println; var i:=a.Pairwise.Select(x->x[0]*x[1]).ToArray.IndexMax; Writeln('Элементы ',i+1,' и ',i+2,' дают произведение ',a[i]*a[i+1]) end.
Пример n= 15 115 263 63 193 374 685 174 755 728 654 979 274 93 994 411 Элементы 10 и 11 дают произведение 640266
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota
Оформи подписку