Search Header Logo
Максимальный и минимальный элементы массива. Поиск элемента

Максимальный и минимальный элементы массива. Поиск элемента

Assessment

Presentation

Computers

4th Grade

Practice Problem

Medium

Created by

Леся Вилюха

Used 5+ times

FREE Resource

18 Slides • 5 Questions

1

Максимальный и минимальный элементы массива. Поиск элемента

Slide image

2

Повторим

3

Выберите правильное описание массива :

4

Multiple Choice

Выберите правильное описание массива :

1

var <A>: array [1..30] of integer;

2

var of array: [1..30], <D> of string;

3

var <A>: array [1...30] of real;

5

Multiple Select

Выберите правильные обращения к элементу массива:

1

a[3]

2

S[n-1]

3

J[1..30]

4

T[i]

5

k[3-1]

6

Multiple Choice

Можно ли использовать массивы в операциях присваивания?

1

Да

2

Нет

7

Multiple Choice

В каких случаях команда присваивая массивов a:= b; недопустима ?

1

var a: array[1..20] of string;

b: array [1..20] of string;

2

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

b: array [1..25] of integer;

3

var a,b: array [1..31] of real;

4

var a: array[1..20] of string;

b: array [1..20] of integer;

8

Multiple Choice

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

1

прямым

2

линейным

3

непрямым

4

умным

9

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

10


Очень часто для решения задачи требуется находить не заданный элемент массива, а максимальный(наибольший) или минимальный (наименьший)

11


Если в массиве один-единственный элемент, то он и есть максимальный.

Если элементов больше одного, то максимальный в массиве из i элементов является максимум из a[i] и максимального среди первых i-1 элементов.

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

Если текущий элемент больше, то значение максимума, найденное на предыдущем шаге нужно обновить!

12

Реализация алгоритма в программе PascalABCNET


13



Var a: array [1..20] of integer;

n,max:integer;

begin

write('Количество n=');

readln(n); { количество элементов массива }

writeln('Элементы массива');

for var i :=1 to n do

read(a[i]); {заполнение массива элементами }

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

for var i :=2 to n do

if a[i] > max then {Последовательно сравниваем текущий элемент с максимумом}

max :=a[i]; {При выполнении сравнения условие обновляется}

writeln('Максимум = ' , max);

end.




14

Тестирование программы


Slide image

15

Данный алгоритм находит значение максимального элемента, но не позволяет определить, на каком месте массива расположен этот элемент!


16

Используем переменную n_max для хранения индекса максимального элемента.

Значение переменной n_max будет изменяться тогда, когда изменяется значение максимального элемента.

17

Код программы


Если в массиве несколько элементов имеют максимальное значение, то значением переменной n_max будет индекс ПЕРВОГО из них.


уточнение: если использовать условие a[i] ≥  max , то переменная n_max будет хранить индекс последнего из максимальных элементов.

Slide image

18


Когда известен индекс i элемента массива, значение элемента можно получить обратившись к элементу по индексу: a[i].

Поэтому при поиске максимального элемента достаточно хранить только его индекс n_max.

Значение максимального элемента - a[n_max].

Slide image

19

Для поиска минимального элемента необходимо заменить знак > в условии оператора ветвления на знак <

Slide image

20

Задача 1

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

Определить результат победителя и номер.

21



Исходные данные: массив а - числа, являющиеся временем прохождения трассы, количество спортсменов - n.

Результат: a[n_min]- минимальное время, n_min - номер победителя.

Алгоритм решения:

1.Ввод данных

2.Воспользуемся алгоритмом поиска минимального элемента в массиве и его номера.

3.Вывод результата.

Описание переменных: a - array[1..20] of real;

n, n_min - integer;


22


var a:array [1..20] of real;

n, n_min : integer;

begin

writeln('Количество спортсменов');

readln(n);

writeln('Время');

for var i:=1 to n do

read (a[i]);

{организуем поиск минимального элемента}

n_min :=1;

for var i:= 2 to n do

if a [i]< a[n_min] then

n_min : =i;

writeln ('победитель - лыжник номер', n_min);

writeln ('Его время - ', a [n_min]); end.



23

Выполните из учебника пример 6.5,

упражнение 2 (1),

задание 3 из рабочей тетради на странице 19


Максимальный и минимальный элементы массива. Поиск элемента

Slide image

Show answer

Auto Play

Slide 1 / 23

SLIDE