Определить минимальный элемент в целочисленном массиве

Узнай цену своей работы

Алгоритм решения нахождения минимального элемента в целочисленном массиве:

  1. Инициализируем переменную, которая будет хранить минимальный элемент массива. Начальное значение этой переменной может быть первым элементом массива.
  2. Сравниваем значение первого элемента массива с текущим минимальным значением.
  3. Если значение первого элемента меньше текущего минимального значения, обновляем минимальный элемент.
  4. Переходим к следующему элементу массива и повторяем шаги 2-3, сравнивая каждый элемент с текущим минимальным значением и обновляя его при необходимости.
  5. Повторяем шаги 2-4 до тех пор, пока не пройдем все элементы массива.
  6. Возвращаем полученное значение минимального элемента.

Например, у нас есть следующий целочисленный массив: [5, 2, 9, 3, 7]. Применяя алгоритм:

  1. Инициализируем переменную для минимального элемента со значением 5 (первый элемент массива).
  2. Берем второй элемент массива, его значение 2. Сравниваем его со значением текущего минимального элемента (5). Так как 2 меньше, обновляем минимальный элемент на 2.
  3. Берем третий элемент массива, его значение 9. Сравниваем его со значением текущего минимального элемента (2). Так как 9 больше, не обновляем минимальный элемент.
  4. Берем четвертый элемент массива, его значение 3. Сравниваем его со значением текущего минимального элемента (2). Так как 3 больше, не обновляем минимальный элемент.
  5. Берем пятый элемент массива, его значение 7. Сравниваем его со значением текущего минимального элемента (2). Так как 7 больше, не обновляем минимальный элемент.
  6. Обход всех элементов окончен. Минимальный элемент массива равен 2.
  7. Возвращаем полученное значение 2.

Листинг программы

const
    m = 20;

var
    arr: array[1..m] of byte;
    min_num, min_index: byte;
    i: byte;

begin
    randomize;

    for i := 1 to m do begin
        arr[i] := random(100);
        write (arr[i]:3);
    end;

    min_index := 1;
    min_num := arr[1];

    for i := 2 to m do
        if arr[i] < min_num then begin
            min_index := i;
            min_num := arr[i];
        end;

    writeln;
    writeln ('Min = ',min_num);
    writeln ('position: ', min_index);

end.

Объяснение кода

  1. Объявляется константа m, которая определяет размер массива на 20 элементов.
  2. Объявляются переменные arr, min_num, min_index и i.
    • arr - массив типа byte, который будет хранить случайные числа.
    • min_num - переменная для хранения минимального числа в массиве.
    • min_index - переменная для хранения индекса минимального числа в массиве.
    • i - переменная для использования в циклах.
  3. Инициализируется генератор случайных чисел.
  4. С помощью цикла for заполняется массив случайными числами и происходит их вывод на экран.
  5. Инициализируются переменные min_index и min_num значениями первого элемента массива.
  6. С помощью цикла for происходит поиск минимального числа и его индекса в массиве.
  7. Если текущий элемент массива меньше min_num, то обновляются переменные min_index и min_num.
  8. После окончания цикла выводится минимальное число и его позиция (индекс) в массиве.