Суммирование элементов массива по ключу

Реализация:

s:=0;

writeln(‘ Введите ключ’);

readln(key);

for i:=1 to n do

if a[i]=key then s:=s+a[i];

writeln('Сумма элементов= ', s);

Подсчет элементов массива по ключу

Реализация:

kol:=0;

writeln(‘ Введите ключ’);

readln(key);

for i:=1 to n do

if a[i]=key then kol:=kol+1;

writeln('Количество элементов= ', kol);

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

Данный алгоритм заключается в следующем: вначале запоминаем номер первого элемента массива, принимая его за минимальный (максимальный) элемент. Далее, начиная со второго, все элементы сравниваются с предполагаемым минимумом (максимумом) и если какой-нибудь из них меньше (больше) предполагаемого минимума (максимума), то запоминается номер этого элемента. Эти действия повторяются до тех пор, пока не закончатся элементы массива. Ниже написан фрагмент программы для поиска минимального элемента. Для реализации алгоритма введем еще один объект программы n_min, переменную, в которой будет храниться номер минимального элемента.

Реализация:

writeln(‘ Введите количество элементов массива’);

readln(n);

write(' Введите элементы массива’);

for i:=1 to n do readln(a[i]);

{ Пусть первый элемент минимальный }

n_min:=1;

for i:=2 to n do

if a[i]<a[n_min] then n_min:=i;

writeln('Минимальный элемент массива: ', a[n_min]);

writeln('Номер элемента: ', n_min);

Формирование нового массива из элементов исходного массива

Для формирования нового массива из элементов исходного необходимо, прежде всего, подготовить переменную целого типа, которая будет, является индексом элементов для нового массива, и увеличивать значение номера элемента после того, как очередной элемент помещен в новый массив. Рассмотрим два алгоритма: формирование нового массива из элементов исходного массива, удовлетворяющих заданному условию (< key); слияние двух упорядоченных массивов в один упорядоченный.

Реализация:

{Формирование нового массива по ключу}

writeln(‘ Введите ключ’);

readln(key);

j:=0; {индекс нового массива}

For i:=1 to n do

If a[i] < key then

begin

j:=j+1;

b[j]:=a[i]

end;

{Печать сформированного массива}

for i:=1 to j do writeln(‘b[‘, i, ‘]= ’, b[i]);


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: