Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Обработка массивов.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
502.27 Кб
Скачать

Вычисление суммы и среднего арифметического элементов массива

Пример 4: Подсчитать сумму элементов массива.

Алгоритм содержит два пункта:

1. Сумма S=0.

2. Проход по всем элементам массива и прибавление их значений к сумме S.

Приведем полный текст программы – решение этой задачи:

{Пример обработки одномерного массива}

{Задание: Ввести массив. Подсчитать сумму элементов массива.}

Program SumExample;

Const {определение констант}

maxN = 20; {максимально возможное количество элементов в массиве}

Type {определение типов}

IndexEl = 1 .. maxN; {индексы массива лежат в интервале от 1 до maxN}

masInt = array[interval] of integer; {массив целых чисел содержащий до maxN элементов}

Var

a:masInt; {массив}

n:interval; {размерность массива}

i:IndexEl; {переменная для сканирования массива}

S:integer; {сумма элементов массива}

Begin

{ ввод массива с клавиатуры }

write(‘Введите n=’);

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

for i:=1 to n do

read(A[i]); {ввод самих элементов}

{Подсчет суммы элементов массива}

{1} s:=0;

{2} for i:=1 to n do

s:=s+A[i];

{Вывод полученного значения суммы}

writeln(‘сумма элементов массива S=’, S);

end. {конец программы}

Пример  5: Вычислить средне арифметическое элементов массива.

Алгоритм содержит три пункта. Первые два совпадают с предыдущей задачей:

1. Сумма s=0.

2. Проход по всем элементам массива и прибавление их значений к сумме s.

3. Сумму делим на количество элементов массива sa=s/n .

Фрагмент программы:

Var {дополнительные переменные}

s: integer; {сумма элементов массива}

sa:real; {среднее арифметическое элементов массива}

…………………………….

Begin

…………………………….

{1} s:=0;

{2} for i:=1 to n do

s:=s+A[i];

{3} s:=s/n;

…………………………….

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

Пример 6: Найти значение максимального элемента массива.

Алгоритм содержит три пункта:

1. Максимальным элементом считаем первый элемент: max=A[1].

2. Начиная со второго элемента, сравниваем имеющийся максимальный элемент max с очередным элементом массива A[i].

3. Если очередной элемент массива больше имеющегося максимального элемента, то это и есть новый максимальный элемент max=A[i].

Фрагмент программы:

Var {дополнительные переменные}

max:integer; {значение максимального элемента массива}

…………………………….

Begin

…………………………….

{1} max:=A[1];

{2} for i:=2 to n do

{3} if A[i]>max then max:=A[i];

…………………………….

Пример 7: Найти min и max значения элементов массива.

Фрагмент программы:

Var {дополнительные переменные}

max,min:integer;{значение максимального и минимального элементов массива}

…………………………….

Begin

…………………………….

max:=A[1];

min:=A[1];

for i:=2 to n do

if A[i]>max then max:=A[i]

else if A[i]<min then min:=A[i];

…………………………….

Подсчет количества элементов, удовлетворяющих заданному условию

Пример 8: Подсчитать, сколько раз в массиве встречается элемент, равный 10.

Задача решается по следующему алгоритму:

1. Количество нужных элементов k=0.

2. Проходим по всем элементам массива,

3. И если очередной элемент массива равен 10,

4. Тогда увеличиваем k (количество элементов равных 10) на 1.

Фрагмент программы:

Var {дополнительные переменные}

k:integer; {количество элементов, равных 10}

…………………………….

Begin

…………………………….

{1} k:=0;

{2} for i:=1 to n do

{3} if A[i]=10

{4} then k:=k+1;

…………………………….