Уяви себе головним бухгалтером підприємства, який аналізує список значень заробітної платні співробітників за місяць. Які задачі ти можеш поставити при такому аналізі (загальна сума виплат, середнє значення, кількість нарахувань більше певного значення, найбільше значення). Розв’язування багатьох прикладних задач, що потребують опрацювання сукупності однотипних значень, базується на типових алгоритмах опрацювання списків. які передбачають послідовний перегляд елементів списку і виконання певних дій із кожним елементом.
 
Розглянемо основні типи задач опрацювання елементів списку:
• задачі на змінювання значень елементів списку;
• задачі на пошук елемента із заданою властивістю;
• задачі на знаходження суми (добутку) елементів списку.
Опрацювання елементів списку  виконується в циклах, де як індекс використовують параметр циклу.
Перегляд елементів списку
Перебрати елементи списку можна двома способами.
1 спосіб — послідовно звертатися до елемента за його індексом. В такому випадку потрібно знати кількість елементів у списку.
Приклад:
Надрукувати елементи списку a=[2,5,14,62,-5].
a = [2,5,14,62,-5]
n=len(a)
for i in range(n):
    print (a[i])
2 спосіб — перебрати всі наявні в списку елементи.
Приклад:
 Надрукувати елементи списку a=[2,5,14,62,-5].
a = [2,5,14,62,-5]
for item in a:
    print (item)
Розгляньмо алгоритми розв’язування задач, пов’язаних із опрацюванням списків, на прикладі задачі:
Задача. У ботанічному саду ростуть 3 магнолії, 5 яблунь, 4 груші, 6 каштанів, 2 сливи і 1 персикове дерево. Число дерев кожного виду занесено до списку tree:
tree = [3, 5, 4, 6, 2, 1]
 
122.PNG
Заміна значень елементів списку
1) Садівникам треба збільшити кількість дерев кожного виду вдвічі. Як змінити значення елементів списку tree?
Алгоритм розв’язування задачі: послідовно перебрати всі елементи списку і значення чергового елемента змінити за певним правилом (наприклад, змінити знак елементів на протилежний, надати всім елементам нульові значення, збільшити значення всіх елементів на певну величину).
tree = [3, 5, 4, 6, 2, 1].
for i in range(len(tree)):
                    tree[i] = tree[i]*2
Після виконання команди циклу змінна tree набуває значення [6, 10, 8, 12, 4, 2].
2) Садівникам треба збільшити на 3 кількість дерев, число яких менше за 4. Як змінити значення елементів списку tree?
Алгоритм розв’язування задачі: послідовно перебрати всі елементи списку; якщо черговий елемент відповідає деякій умові, його значення змінити за певним правилом. 
tree = [3, 5, 4, 6, 2, 1].
for i in range(len(tree)):
             if tree[i]<4: tree[i] = tree[i]+3
Після виконання команди циклу змінна tree набуває значення [6, 5, 4, 6, 5, 4].
Визначення кількості елементів із заданою властивістю
3) Як садівники можуть з’ясувати, скільки видів дерев у саду представлено в недостатній кількості — не більше 3 дерев?
Алгоритм розв’язування задачі: задати значення лічильника рівним нулю; в циклі перебрати всі елементи списку; якщо черговий елемент відповідає деякій умові, значення лічильника збільшити на 1.
tree = [3, 5, 4, 6, 2, 1]
k = 0                  # Лічильник елементів із заданою властивістю
for i in range(len(tree)):
                if tree[i] <= 3:    # Якщо дерев i-го виду мало,
                                k = k+1 # то збільшити лічильник на 1
                                print(і) # і вивести індекс елемента
print (‘k = ’, k)                     # Вивести кількість виявлених видів
 
Знаходження суми (добутку) елементів із заданою властивістю
4) Садівникам треба знайти загальну кількість дерев, вид яких представлений не менш ніж 4 деревами.
Алгоритм розв’язування задачі: задати значення задати значення суми рівним нулю (значення добутку рівним 1); в циклі перебрати всі елементи списку; якщо черговий елемент відповідає деякій умові, додати його значення до значення суми (помножити на значення добутку).
tree = [3, 5, 4, 6, 2, 1]:
suma = 0    # Змінна для збереження значення суми
for item in tree:
                   if item >= 4: suma = suma+item
print('suma = ', suma)     # Буде надруковано suma = 15
 
Під час перебору значень елементів списку може перевірятися, чи є значення кратним деякому числу, чи є число додатним або від’ємним, чи потрапляє значення у вказаний числовий проміжок та інші умови залежно від поставленої задачі.
Приклад:
Поділити на 2 парні елементи списку а=[2,5,14,62,-5].
a = [2,5,14,62,-5]
for i in range(5):
    if a[i]%2==0:
        a[i]=a[i]//2
print (a)    # буде надруковане  [1, 5, 7, 31, -5]
Під час перебору індексів елементів списку може перевірятися також і значення індексу елемента списку (наприклад, змінюються елементи, що стоять на парних місцях).
Приклад:
Елементи списку а=[2,5,14,62,-5], що мають парні індекси, замінити нулем.
a = [2,5,14,62,-5]
for i in range(5):
    if i%2==0:
        a[i]=0
print (a)     # буде надруковане  [0, 5, 0, 62, 0]
Джерела:
Інформатика : підруч. для 7 кл. закл. загал. серед. освіти / [О. О. Бондаренко, В. В. Ластовецький, О. П. Пилипчук, Є. А. Шестопалов]. — Харків : Вид-во «Ранок», 2024. — с. : іл.