Главная

Популярная публикация

Научная публикация

Случайная публикация

Обратная связь

ТОР 5 статей:

Методические подходы к анализу финансового состояния предприятия

Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века

Ценовые и неценовые факторы

Характеристика шлифовальных кругов и ее маркировка

Служебные части речи. Предлог. Союз. Частицы

КАТЕГОРИИ:






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




Последовательный поиск — элементы массива просматриваются последовательно один за другим, при этом производится проверка соответствия элемента заданному

 

1 4 9 6 7 13 19 12 5 8 k = 19; k = 3 1 4 6 7 8 8 8 4 5 4 k = 8  

 


свойству.

 

Имеется n целых чисел. Необходимо найти число (элемент), значение которого равно К. Если такой элемент в последовательности есть, то указать его порядковый номер.

 

program zadacha5_1;

var

k,i,n,p:integer;

a:array[1..30] of integer; {описание массива}

Begin Write('Кол. элем. массива'); readln(n);

for i:=1 to n do

begin

write('Введите a[',i,']'); {Ввод элементов массива}

readln (a[i]);

end;

writeln('Введённый массив');

for i:=1 to n do {Вывод эл. массива}

write (a[i],’ ’);

writeln;

write('Введите К');readln(k);

p:=0;

for i:=1 to n do {Нахождение суммы}

if a[i]=k then p:=i;

if p=0

then writeln('элемента в табліце нет')

else writeln('элемент найден, индекс =',p)

End.

В данной задаче в случае наличия в таблице нескольких элементов, равных К будет выдан наибольший индекс. Для поиска первого такого элемента в таблице используют цикл:

i:=1;

While (i<=n) and (a[i]<>k) do

i:=i+1;

Решим задачу поиска наибольшего элемента в таблице А из N вещественных чисел. Найти максимум и индекс этого элемента.

 

1 4 9 6 7 13 19 12 5 8 1 4 6 7 8 8 8 4 5 4 k = 8  
program zadacha5_2;

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

max: real;

j,i: integer;

Begin

Write('Кол. элем. массива'); readln(n);

{Ввод элементов массива}

…………………..

{Вsвод элементов массива}

…………………..

max:=a[1]; j:=1;

for i:=2 to n do {Поиск максимума}

if max<a[i] then

begin

max:=a[i];

j:=i;

end;

writeln;

writeln('Макс. элемент массива =', max);

writeln('Индекс макс. элемента =', j);

 

End.

Алгоритм:

1. Условно считаем первый элемент наибольшим (максимальным). Запоминаем его значение (a[1]) и его индекс (=1).

2. Cравниваем значение максимального с очередным элементом таблицы (i), начиная со второго элемента и до последнего.

3. При нахождении элемента с большим значением меняем значение максимального на найденный элемент и запоминаем его индекс.

4. При наличии в таблице нескольких минимальных и при условии max<a[i] будет найден максимальный элемент с наименьшим индексом (первый встретившийся в таблице), а если условие будет max<=a[i], то - с большим индексом.

 

Задания для самостоятельной работы:

 

1. Имеется целочисленный массив, состоящий из 15 элементов найти минимальный элемент и его индекс.

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

3. Дан массив целых чисел из n элементов. Найти и вывести номера элементов, заканчивающихся цифрой 0.

4. Рост N учеников класса представлен в виде массива. Найти количество учеников, рост которых не превышает значения R.

5. В массиве записаны результаты N игр футбольной команды (если игра закончилась выигрышем данной команды, то записано число 3, проигрышем - число 2, вничью - 1). Определить количество выигрышей, проигрышей, ничьих.

6. В массиве хранится информация о росте N человек. Определить, на сколько рост самого высокого человека превышает рост самого низкого.

7. В массиве хранится информация о стоимости 1 кг N видов конфет. Определить порядковый номер самого дешевого вида конфет. Если таких несколько, то должен быть найден индекс: А) первого из них;

Б) последнего из них.

В массиве хранится информация о стоимости каждой из M книг. Определить количество самых дешевых книг (с одинаковой минимальной ценой).

Двухмерные массивы






Не нашли, что искали? Воспользуйтесь поиском:

vikidalka.ru - 2015-2024 год. Все права принадлежат их авторам! Нарушение авторских прав | Нарушение персональных данных