Паскаль. в целочисленном массиве из 10 элементов найти предмаксимальное по значению число , вывести его позицию. например, 2 0 3 1 1 максимальное число 3, предмаксимальное 2 его позиция 1.

5Артём 5Артём    2   19.11.2019 09:35    2

Ответы
leha201711goruinov leha201711goruinov  10.10.2020 14:23

program predmax;

function GetMax (aa: array of Integer): Integer;

var

 i, imax: Integer;

begin

 imax := Low (aa);

 for i := Low (aa) + 1 to High (aa) do

   if aa [i] > aa [imax] then

     imax := i;

 GetMax := imax + 1;

end;

var

 a: array [1..10] of Integer;

 i, imax: Integer;

begin

 Write ('Массив: ');

 for i := Low (a) to High (a) do

   Read (a [i]);

 a [GetMax (a)] := - MaxInt;

 imax := GetMax (a);

 Write ('Предмаксимальный элемент a[', imax, '] = ', a [imax]);

 ReadLn;

 ReadLn;

end.

ПОКАЗАТЬ ОТВЕТЫ
7hakep7p0739i 7hakep7p0739i  10.10.2020 14:23

===== PascalABC.NET =====

begin

 var a := ReadArrInteger('Введите 10 чисел:', 10);

 var amax := a.Max;

 var s := a.Where(p -> p <> amax).OrderDescending;

 if s.Count > 0 then

 begin

   var apmax := s.First;

   var i := a.FindIndex(p -> p = apmax);

   Println('Предмаксимальный элемент', apmax, 'номер', i+1)

 end

 else

   Println('Нет решения: все элементы в массиве одинаковы')

end.


Паскаль. в целочисленном массиве из 10 элементов найти предмаксимальное по значению число , вывести
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика