Дан целочисленный массив из 30 элементов. элементы массива могут принимать произвольные целые значения. опишите на языке или на одном из языков программирования алгоритм, который находит и выводит второй максимум массива (элемент, который в отсортированном по невозрастанию массиве стоял бы вторым). исходные данные объявлены так, как показано ниже. запрещается использовать переменные, не описанные ниже, но разрешается не использовать часть из них. const n = 30; var a: array [1..n] of integer; i, k, max, max2: integer; begin for i: =1 to n do readln(a[i]); end.

mira0209 mira0209    2   04.10.2019 19:50    3

Ответы
vlad22803 vlad22803  09.10.2020 20:20

program p1;

uses crt;   вывод окошка

const N = 30;

var a: array [1..N] of integer;

i, max, max2 :integer;

begin

 

 for i:=1 to N do begin  вывод элементов массива с рандома

a[i]:=  random (100);

 write( a[i]:4);

 end;

         writeln;

   max:= a[1];  принимаем первый элемент массива за макс

   max2:= a[1];  принимаем первый элемент массива за макс

   

  for i:=1 to N do begin              находим первый max                                                                  

    if  max<a[i] then

      max:= a[i];

      end;

       

      for i:=1 to N do begin                            находим второй max2

        if (max2<a[i]) and ( a[i]<> max) then

         max2:= a[i];

         end;

         

         writeln('max=',max);

         writeln('max2=',max2);

         end.

ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика