Как найти номер максимального элемента паскаль программа

Все, что необходимо начинающему и опытному программисту

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

Довольно-таки типичная задача для большого количества данных — поиск максимума. Например, в списке успеваемости учеников класса найти самого прилежного. Иначе говоря, требуется выбрать наибольшее значение среднего балла и указать фамилию ученика.

Пример 8.3.
Программа поиска максимального элемента в массиве и его индекса (см. блок-схему, алгоритма на рис. 8.5)

Рис. 8.5. Блок-схема алгоритма поиска максимального элемента массива и его индекса

Заметим, что в процессе поиска максимума не обязательно хранить обе величины — номер максимума и его значение. Достаточно хранить одну, в зависимости от поставленной задачи.

Если индекс максимума не нужно знать, достаточно будет переменной Мах. Если, наоборот, нужен только номер — достаточно Imax.
Тонкость состоит в том, что если нужно найти и то и другое, все равно достаточно найти только Imax, ведь значение максимума легко может быть получено по его индексу (A[Imax]).

Pascal.Урок6.4 Одномерный массив. Поиск максимального элемента и его номера


Иными словами, нашу программу можно упростить следующим образом:

Пример 8.4.
Программа поиска максимума, не хранящая значение максимума, а запоминающая только его номер

Program Maximum2;
const
N=10;
type
Mas=array [1..N] of integer;
var
A: Mas;
i, imax: integer;
begin
Randomize;
for i:= 1 to N do
begin
A[i]:=-50+Random(101);
write(A[i]:5)
end;
writeln;
< V. Поиск индекса максимального элемента в массиве >
imax:=l;
for i := 2 to N do
if A[imax] < A[i] then
imax:=i;
writeln (‘Максимальный элемент в массиве=’, A[imax]:5);
writeln(‘Его индекс=’,imax:5);
readln
end.

Задание 8.5.
Выполните поиск максимальйого и минимального элемента в массиве за один цикл (блок-схема алгоритма показана на рис. 8.6).

Читайте также:
Монитор программа для компьютера это

Рис. 8.6. Блок-схема алгоритма поиска индексов максимального и минимального элементов массива за один цикл

Задание 8.6.
В одномерном массиве из 10 элементов определить местоположение минимального элемента. Обнулить элементы, стоящие до него, но не сам этот элемент. (Обнулить — значит записать 0 на место элемента, то есть выполнить A[i] := 0.) Измененный массив вывести на экран.

Задание 8.7.
В одномерном массиве из 10 элементов определить местоположение минимального и максимального элементов. Обнулить элементы, стоящие между ними, а также сами эти элементы.

Источник: www.programmer-lib.ru

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

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

Видео уроки паскаль: поиск максимального и минимального значения

В задачах подобного рода (поиск максиму или минимума) может быть поставлена цель, найти

  • только индекс элемента,
  • только значение или
  • как индекс, так и значение.

В программе ниже используется последний вариант.

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

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

Программа на языке Паскаль:

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); end.

Источник: pas1.ru

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

Часто встречаются задачи, где необходимо найти максимальный элемент в массиве. Рассмотрим общий алгоритм решения такой задачи.

Первое, что придётся сделать – создать массив. Как нам уже известно, нужно использовать цикл с параметром. Также удобнее будет создать массив случайным образом, если в условии задачи не оговорён способ задания массива.

Алгоритм нахождения максимального элемента массива выполняется следующим образом.

Сначала указываем, что первый элемент массива считается максимальным, иначе говоря – Max = A[i].

Потом начинаем процесс сравнивания последующих элементов массива с максимальным элементом в массиве.

  1. Если максимальный элемент больше следующего, то ничего не меняем.
  2. Если максимальный элемент меньше следующего, то он становиться максимальным.

Блок-схема максимальный элемент массива

Программа максимальный элемент массива Pascal

Ниже представлен текст программы на языке Pascal, как найти максимальный элемент массива. Как было указанно в алгоритме выше, сначала создается сам массив (в моем случает любые целые числа от 0 до 100 включительно).

Program Max_element_massiva ; Var i, n, max : integer ; A : array [1..100] of integer; Begin Writeln(‘Введите количество элементов массива’) ; Readln(N) ; Randomize; For i := 1 to N do begin A[i] := Random(100); Write(A[i]); end; Max := A[1]; For i := 2 to N do if A[i]>Max then Max := A[i]; Writeln(‘Максимальный Элемент массива = ‘,Max) ; Readln ; End.

Читайте также:
Ошибка запуск программы невозможен так как на компьютере отсутствует Steam

Источник: bigspawn.blogspot.com

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru