Поиск максимального элемента в массиве

Задача: 

Найти максимальный элемент численного массива.

Алгоритм решения задачи: 

Значения, составляющие массив, могут быть получены из разных источников: путем вызова функции random, ввода значений пользователем, считывания из файла. В программе ниже используется первый вариант.
В задачах подобного рода (поиск максиму или минимума) может быть поставлена цель, найти только 1) индекс элемента, 2) только значение или 3) и то и другое. В программе ниже используется третий вариант.
Неплохо бы, чтобы при запуске программы весь массив выводился на экран. В этом случае пользователь может оценить правильность работы программы.

  1. В переменной max_num хранится текущее максимальное значение массива, а в max_index – его позиция (индекс).
  2. В программе можно выделить две части: заполнение массива числами с выводом их на экран (первый цикл for) и непосредственно поиск максимума (второй цикл for).
  3. Перед первым циклом запускается процедура randomize для того, чтобы при каждом запуске программы значения массива были разными.
  4. Изначально делается предположение, что первый элемент массива и есть максимум. Поэтому переменной max_index присваивается значение 1 (т.е. указатель на первый элемент массива), а max_num – непосредственно значение, хранящееся в первой ячейке массива.
  5. Начиная со второго элемента, каждое очередное значение массива сравнивается с текущим значением max_num. В случае, если текущее значение массива больше, чем хранящиеся в max_num, происходит новое присваивание обоим переменным текущего значения и индекса.
Программа на языке Паскаль: 

const
    m = 20;
 
var
    arr: array[1..m] of byte;
    max_num, max_index: byte;
    i: byte;
 
begin
    randomize;
 
    for i := 1 to m do begin
        arr[i] := random(100);
        write (arr[i]:3);
    end;
 
    max_index := 1;
    max_num := arr[1];
 
    for i := 2 to m do
        if arr[i] > max_num then begin
            max_index := i;
            max_num := arr[i];
        end;
 
    writeln;
    writeln ('Max = ',max_num);
    writeln ('position: ', max_index);
 
readln
end.

Комментарии

Как найти сумму элементов S,

Как найти сумму элементов S, расположенных между максимальным и минимальным элементами?

Приблизительно найти

Как определить есть ли в массиве элемент, приблизительно равный X

массивы. найти максимальное значение, минимальное и среднее

const 
  n=9; 
var 
  m : array [0..n] of integer; 
  i : integer;
  min, max : integer;
  sr : real;
  go: String;
 
 
begin 
  repeat
 
  randomize;
  for i := 0 to n do
  m[i] := random (10)+1;
 
  for i := 0 to n do
  writeln ('m [', i,'] = ', m[i]);
 
  min := m [0];
  for i := 1 to n do 
  if m[i] < min then 
  min := m[i];
  writeln ('min element is ', min);
 
   max := m [0];
  for i := 1 to n do 
  if m[i] > max then 
  max := m[i];
  writeln ('max element is ', max);
 
  sr := 0;
  for i := 0 to n do 
  sr := sr + m[i];
  writeln ('srednee zna4enie', (sr/(n+1)));
 
  readln(go);
if go<>'нет' then
 
until go = 'нет';
 
end.   

а как найти именно первый или

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

Несколько макс

for i:=1 to 15 do
if a[i]>max then
begin
max:=a[i];
imax:=i;
end;
for i := 1 to 15 do 
if a[i] = max then
begin
 write(a[i]:4);
 end;
 end.

j:=a[1] k:=a[m]

j:=a[1]
k:=a[m]

А как найти максимальный

А как найти максимальный отрицательный элемент

добавляешь в условие <0

добавляешь в условие <0

найти максимальный элемент

найти максимальный элемент массива и его номер при условии что все элементы массива различны решите эту пожалуста

Решение подобной задачи уже

Решение подобной задачи уже есть.

паскаль, одномерный массив

Как найти 3 максимальных элемента в массиве?