0 added
0 removed
Original
2026-01-01
Modified
2026-02-26
1
<p>Распространенный вариант использования циклов с массивами -<strong>агрегация</strong>. Агрегацией называются любые вычисления, которые, как правило, строятся на основе всего набора данных, например, поиск максимального, среднего, суммы и так далее. Процесс агрегации не требует знания нового синтаксиса, но влияет на алгоритм решения задач. Поэтому имеет смысл рассмотреть его отдельно. Начнем с поиска максимального.</p>
1
<p>Распространенный вариант использования циклов с массивами -<strong>агрегация</strong>. Агрегацией называются любые вычисления, которые, как правило, строятся на основе всего набора данных, например, поиск максимального, среднего, суммы и так далее. Процесс агрегации не требует знания нового синтаксиса, но влияет на алгоритм решения задач. Поэтому имеет смысл рассмотреть его отдельно. Начнем с поиска максимального.</p>
2
<p>Почему это пример агрегации? Здесь мы видим<em>вычисление</em>, которое включает в себя сравнение всех элементов для поиска одного, которое станет результатом этой операции.</p>
2
<p>Почему это пример агрегации? Здесь мы видим<em>вычисление</em>, которое включает в себя сравнение всех элементов для поиска одного, которое станет результатом этой операции.</p>
3
<p>Обратите внимание, что начальным значением max взят первый элемент, а не, скажем, число 0. Ведь может оказаться так, что все числа в массиве меньше 0, и тогда мы получим неверный ответ.</p>
3
<p>Обратите внимание, что начальным значением max взят первый элемент, а не, скажем, число 0. Ведь может оказаться так, что все числа в массиве меньше 0, и тогда мы получим неверный ответ.</p>
4
<p>Теперь рассмотрим поиск суммы:</p>
4
<p>Теперь рассмотрим поиск суммы:</p>
5
<p>Алгоритм поиска суммы значительно проще, но обладает парой важных нюансов.</p>
5
<p>Алгоритм поиска суммы значительно проще, но обладает парой важных нюансов.</p>
6
<p>Чему равна сумма элементов пустого массива? С точки зрения математики такая сумма равна 0. Что в принципе совпадает со здравым смыслом. Если у нас нет яблок, значит у нас есть 0 яблок (количество яблок равно нулю). Функции в программировании работают по этой логике.</p>
6
<p>Чему равна сумма элементов пустого массива? С точки зрения математики такая сумма равна 0. Что в принципе совпадает со здравым смыслом. Если у нас нет яблок, значит у нас есть 0 яблок (количество яблок равно нулю). Функции в программировании работают по этой логике.</p>
7
<p>Второй момент связан с начальным элементом суммы. У переменной sum есть начальное значение равное 0. Зачем вообще задавать значение? Любая повторяющаяся операция начинается с какого-то значения. Нельзя просто так объявить переменную и начать с ней работать внутри цикла. Это приведет к неверному результату. Представим что мы хотим посчитать не сумму, а произведение чисел:</p>
7
<p>Второй момент связан с начальным элементом суммы. У переменной sum есть начальное значение равное 0. Зачем вообще задавать значение? Любая повторяющаяся операция начинается с какого-то значения. Нельзя просто так объявить переменную и начать с ней работать внутри цикла. Это приведет к неверному результату. Представим что мы хотим посчитать не сумму, а произведение чисел:</p>
8
<p>В результате такого вызова, внутри mult окажется 0. Почему для умножения нужна единица? Очень легко проверить, что все остальные варианты приведут к неверному результату. Если начальное значение будет равно 0, то результатом умножения всегда будет 0.</p>
8
<p>В результате такого вызова, внутри mult окажется 0. Почему для умножения нужна единица? Очень легко проверить, что все остальные варианты приведут к неверному результату. Если начальное значение будет равно 0, то результатом умножения всегда будет 0.</p>
9
<p>В математике существует понятие<strong>нейтральный элемент операции</strong>(у каждой операции свой элемент). Это понятие имеет очень простой смысл. Операция с этим элементом не изменяет то значение, над которым проводится операция. В сложении любое число плюс ноль дает само число. При вычитании то же самое. Даже у конкатенации есть нейтральный элемент - это пустая строка: "" + "one" будет "one".</p>
9
<p>В математике существует понятие<strong>нейтральный элемент операции</strong>(у каждой операции свой элемент). Это понятие имеет очень простой смысл. Операция с этим элементом не изменяет то значение, над которым проводится операция. В сложении любое число плюс ноль дает само число. При вычитании то же самое. Даже у конкатенации есть нейтральный элемент - это пустая строка: "" + "one" будет "one".</p>
10
<p>Агрегация далеко не всегда означает, что коллекция элементов сводится к некоторому простому значению. Результатом агрегации может быть сколь угодно сложная структура, например, массив. Подобные примеры часто встречаются в реальной жизни. Самый простой пример - это список уникальных слов в тексте.</p>
10
<p>Агрегация далеко не всегда означает, что коллекция элементов сводится к некоторому простому значению. Результатом агрегации может быть сколь угодно сложная структура, например, массив. Подобные примеры часто встречаются в реальной жизни. Самый простой пример - это список уникальных слов в тексте.</p>