Обробка послідовностей. Загальна схема обробки. Приклади алгоритмів обробки послідовностей

Содержание

Слайд 2

Нюанси обробки послідовностей

Для представлення послідовності в більшості випадків достатньо використовувати лише одну

Нюанси обробки послідовностей Для представлення послідовності в більшості випадків достатньо використовувати лише
змінну для зберігання поточного елементу
Обробка даних практично завжди суміщена з веденням/ генерацією/ розрахунком даних.
Схему обробки послідовності можна в подальшому проектувати на обробку цифр числа, одновимірного масиву тощо

Слайд 3

Загальна схема обробки послідовності

Перед циклом обробки виконується підготовка даних, необхідних для формування

Загальна схема обробки послідовності Перед циклом обробки виконується підготовка даних, необхідних для
результату. В залежності від задачі блок підготовки може бути відсутнім.
На кожному кроці циклу обробки відбувається формування поточного елементу та його обробка.
Після завершення циклу обробки відбувається опрацювання результату (виведення, перевірка+виведення, використання для вирішення інших задач тощо)

Слайд 4

Сума елементів послідовності довжиною N (використовується метод накопичення)

S = 0;// підготовка початкового

Сума елементів послідовності довжиною N (використовується метод накопичення) S = 0;// підготовка
значення для розрахунку суми
for (int i = 1; i <= N; i++) //цикл для обробки елементів послідовності
{
cout << "a"< cin >> a; //введення поточного елементу
S += a; //обробка поточного елементу – додавання його до суми
}
cout << "Sum = " << S <

Слайд 5

Кількість нулів в послідовності довжиною N (використовується метод накопичення)

k = 0; //

Кількість нулів в послідовності довжиною N (використовується метод накопичення) k = 0;
підготовка початкового значення для розрахунку кількості
for (int i = 1; i <= N; i++) //цикл для обробки елементів послідовності
{
cout << "a"< cin >> a; //введення поточного елементу
if (a == 0) //обробка поточного елементу – перевірка елементу та
k++; //зміна значення кількості k
}
cout << "Zero numbers = " << k <

Слайд 6

Середнє арифметичне послідовності довжиною N (використовується метод накопичення)

Avg = 0; // підготовка

Середнє арифметичне послідовності довжиною N (використовується метод накопичення) Avg = 0; //
початкового значення для розрахунку середнього арифметичного
for (int i = 1; i <= N; i++) //цикл для обробки елементів послідовності:
{
cout << "a"< cin >> a; //введення поточного елементу
Avg += a; //обробка поточного елементу – формування суми елементів
}
cout << "Avg =" << Avg/N <

Слайд 7

Середнє арифметичне ненульових елементів послідовності довжиною N (використовується метод накопичення)

Avg = 0;

Середнє арифметичне ненульових елементів послідовності довжиною N (використовується метод накопичення) Avg =
// підготовка початкових значень для розрахунку середнього арифметичного
k = 0; // ненульових елементів: для розрахунку необхідно знайти суму та
// кількість ненульових елементів
 for (int i = 1; i <= N; i++) //цикл для обробки елементів послідовності:
{
cout << "a" << i << " = ";
cin >> a; //введення поточного елементу
  if (a != 0) //обробка поточного елементу
{
Avg += a; // формування суми ненульових елементів
k++; // та їх кількості
}
}
 if (k == 0) //опрацювання результату – перевірка, чи існує середнє арифметичне ненульових
cout << "All elements are 0" << endl;
else
cout << "Avg =" << Avg / k << endl;

Слайд 8

Мінімум в послідовності довжиною N (використовується метод пошуку мінімального/максимального елементу)

cout << "a1

Мінімум в послідовності довжиною N (використовується метод пошуку мінімального/максимального елементу) cout cin
= "; // підготовка початкового значення для розрахунку мінімуму:
cin >> a; // перший елемент послідовності обробляється окремо
min = a;
for (int i = 2; i <= N; i++) //цикл для обробки елементів послідовності,
//перший елемент не обробляється повторно, починаємо з другого
{
cout << "a"< cin >> a; //введення поточного елементу
if (a < min) //обробка поточного елементу – перевірка елементу та
min = a; //зміна значення мінімуму
}
cout << "Min =" << min <