Напишите программу, которая находит минимальный и максимальный элементы из элементов...

0 голосов
121 просмотров

Напишите программу, которая находит минимальный и максимальный элементы из элементов матрицы с четными положительными значениями и их индексы. Учтите, что таких элементов в матрице может и не быть.


Информатика (654k баллов) | 121 просмотров
Дан 1 ответ
0 голосов

Ответ:

Объяснение:

const

 n = 10;

 a:array[1..n] of integer = (1, 1, 3, 4, 20, 1, 7, 1, 9, -2);

var

 i:integer;

 is_first_element:boolean;

 min_element, max_element:integer;

 min_element_ind, max_element_ind:integer;

begin

 is_first_element:=false;// флаг того, что первый нужный элемент найден

 

 min_element:=0;

 max_element:=0;

 

 min_element_ind:=0;

 max_element_ind:=0;

 

 for i:=1 to n do

   if ((a[i] > 0) and ((a[i] mod 2) = 0)) then

     // если нужный элемент найден

     if (is_first_element) then begin

       //  если уже первый элемент был найден до этого шага

       if (a[i] < min_element) then begin

         //  делаем проверку на минимальный элемент

         min_element:=a[i];

         min_element_ind:=i;

       end;

       if (a[i] > max_element) then begin

         //  делаем проверку на максимальный элемент

         max_element:=a[i];

         max_element_ind:=i;

       end;

     end

     else begin

       //  если найденный элемент - первый

       min_element:=a[i];

       max_element:=a[i];

       

       min_element_ind:=i;

       max_element_ind:=i;

       

       is_first_element:=true; //  меняем флаг

     end;

 

 if (is_first_element) then begin

   writeln('Минимальный элемент = ', min_element, ', его индекс = ', min_element_ind);  

   writeln('Максимальный элемент = ', max_element, ', его индекс = ', max_element_ind);  

 end

 else begin

   writeln('Элементов нет!!!');

 end;

 

end.

(3.1k баллов)