Уроки 44 - 46
§22. Алгоритмы обработки массивов
Содержание урока
Сумма значений элементов массива
Подсчёт элементов массива, удовлетворяющих условию
Поиск максимального элемента в массиве
Выводы. Интеллект-карта
Вопросы и задания
Практическая работа № 22 «Алгоритмы обработки массивов»
Практическая работа № 23 «Сумма значений элементов массива»
Практическая работа № 24 «Подсчёт элементов массива по условию»
Практическая работа № 25 «Поиск максимального элемента»
Сумма значений элементов массива
Ключевые слова:
• сумма значении элементов массива
• подсчёт элементов по условию
• максимальный элемент
Представьте себе, что в массиве записаны зарплаты сотрудников фирмы и требуется найти общую сумму, которая будет им выплачена. Для этого нужно сложить все числа, которые находятся в массиве.
Для того чтобы накапливать сумму, нужно ввести переменную, назовём её sum.
Какое начальное значение нужно записать в переменную sum?
В программе есть переменные sum и х. Запишите оператор, с помощью которого можно добавить значение х к значению sum.
Для решения задачи нужно выполнить перебор элементов массива в цикле. На каждом шаге цикла к значению sum добавляется значение очередного элемента массива.
Будем считать, что массив уже заполнен. Тогда сумму его элементов можно найти так:
sum:=0 sum:=0;
нц для i от 1 до N for i:=l to N do
sum:=sum+A[i] sum:=sum+A[i];
write(sum);
вывод sum
Покажем, как работает этот алгоритм для массива А (рис. 3.9).
Рис. 3.9
Выполним «ручную прокрутку» программы. Запишем в таблице выполняемые команды (операторы) и изменение всех переменных (сам массив А при этом не меняется):
| Оператор | i | sum |
1 | sum:=0 |
| 0 |
2 | i:=1 |
1 | |
3 | sum:=sum+A[1] |
| 5 |
4 | i:=i+l |
2 | |
5 | sum:=sum+A[2] |
| 7 |
6 | i:=i+l |
3 | |
7 | sum:=sum+A[3] |
| 15 |
8 | i:=i+l |
4 | |
9 | sum:=sum+A[4] |
| 18 |
10 | i:=i+1 |
5 | |
11 | sum:=sum+A[5] |
| 19 |
Фоном выделены команды, которые выполняются автоматически в цикле по переменной: в строке 2 переменной i присваивается начальное значение, а в строках 4, 6, 8 и 10 после выполнения очередного шага цикла значение этой переменной увеличивается на единицу.
Для массива на рис. 3.9 выполните ручную прокрутку программы и определите, какое значение будет выведено:
Измените условие отбора в программе из предыдущего задания так, чтобы при обработке массива на рис. 3.9 в переменной sum получилось число 13.
Напишите циклы, с помощью которых можно найти в переменной р:
а) произведение всех элементов массива;
б) произведение положительных элементов массива.
Подумайте, каким должно быть начальное значение переменной р и как оно должно изменяться на каждом шаге цикла.
Следующая страница Подсчёт элементов массива, удовлетворяющих условию
Cкачать материалы урока