Среди первых трёх элеметов найдите максимальный элемент и его индекс. среди последних трёх элементов найдите минимальный элемент и его индекс . результат выведите на экран . паскаль
// PascalABC.NET 3.3, сборка 1583 от 25.11.2017 // Внимание! Если программа не работает, обновите версию!
begin var a:=ArrRandom(ReadInteger('n='),-50,50); a.Println; var s:=a.Select((v,i)->(v,i)); // последовательность в памяти не хранится var max:=s.Take(3).Max(t->t[0]); var imax:=a.IndexesOf(t->t=max).First; var min:=s.TakeLast(3).Min(t->t[0]); var imin:=a.IndexesOf(t->t=min).Last; Writeln('Максимальный из первых трех - №',imax+1,': ',a[imax]); Writeln('Минимальный из последних трех - №',imin+1,': ',a[imin]); end.
Пример: n= 17 -34 37 26 41 19 24 19 4 -7 -31 5 -23 -40 -40 -31 -28 -12 Максимальный из первых трех - №2: 37 Минимальный из последних трех - №15: -31
uses crt; const N=10; var a:array [1..N] of integer; i,j,tmp:integer; begin randomize; clrscr; for i:=1 to N do a[i]:=-100+random(201); Writeln('Macciv do coptupovki'); for i:=1 to N do Write(a[i], ' '); for i:=1 to N-1 do for j:=i+1 to N do if a[i]>a[j] then begin tmp:=a[j]; a[j]:=a[i]; a[i]:=tmp; end; Writeln; Writeln('Macciv pocle coptupovki'); for i:=1 to N do Write(a[i], ' '); readkey end.Двухмерный массив 10 на 10 (array) с названием массива и номером ячейки, заполнен генератором случайных чисел в диапазоне 30.надеюсь смогла
Const n=15; var a:array[1..n] of integer; i,s:integer; sr:real; begin Randomize; writeln('Массив:'); for i:=1 to n do begin a[i]:=random(21); write(a[i]:3); end; writeln; s:=0; for i:=1 to n do s:=s+a[i]; sr:=s/n; writeln('Среднее арифметическое = ',sr:6:2); writeln('Номера элементов, больших среднего арифметического:'); for i:=1 to n do if a[i]>sr then write(i:3); writeln; end.
// Внимание! Если программа не работает, обновите версию!
begin
var a:=ArrRandom(ReadInteger('n='),-50,50); a.Println;
var s:=a.Select((v,i)->(v,i)); // последовательность в памяти не хранится
var max:=s.Take(3).Max(t->t[0]);
var imax:=a.IndexesOf(t->t=max).First;
var min:=s.TakeLast(3).Min(t->t[0]);
var imin:=a.IndexesOf(t->t=min).Last;
Writeln('Максимальный из первых трех - №',imax+1,': ',a[imax]);
Writeln('Минимальный из последних трех - №',imin+1,': ',a[imin]);
end.
Пример:
n= 17
-34 37 26 41 19 24 19 4 -7 -31 5 -23 -40 -40 -31 -28 -12
Максимальный из первых трех - №2: 37
Минимальный из последних трех - №15: -31