Перейти до змісту

ЛР33. Функції без прихованого стану зошита

Коротко про роботу

Обчислення працює в зошиті лише тому, що читає глобальні імена з попередніх комірок. Варіант визначає STUDENT_X.

Відкрити робочий зошит Як виконувати лабораторні

1. Умова

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

Усі обчислення виконуйте з даними свого STUDENT_X. Значення варіанта друкує перша комірка зошита.

2. Що треба знати

Робота виконується після Л1–Л13. Потрібні поняття:

  1. функції Python
  2. параметр і повернення значення
  3. локальна область видимості
  4. відсутність прихованого глобального стану

Межа матеріалу

Використовуйте поняття, вивчені до Л1–Л13. Не використовуйте глобальні змінні як приховані вхідні або вихідні дані функції.

3. Варіант, вхідні дані та результат

У зошиті заповніть STUDENT_NAME, STUDENT_GROUP і STUDENT_X від 1 до 30.

Вхідні дані

Поле Зміст
values числова послідовність
factor множник
threshold поріг

Поля результату

Поле Зміст
scaled_values масштабовані значення
count_result кількість вище порога
total_result сума масштабованих значень

Назви полів результату не змінюйте.

4. Терміни і правила

Терміни

  • прихований глобальний стан — дані поза функцією, від яких вона залежить без явного параметра.
  • чиста залежність через параметр — усі потрібні вхідні дані передаються функції явно.

Правила

  1. scale_values(values, factor) повертає новий список, де кожне значення помножене на factor.
  2. count_above(values, threshold) повертає кількість елементів, строго більших за threshold.
  3. Обидві функції отримують усі потрібні дані через параметри і не читають глобальні імена.
  4. total_result — сума значень із scaled_values.

5. Завдання

Завдання 1

Реалізуйте scale_values(values, factor) без читання глобального factor. Результат запишіть у scaled_values.

Завдання 2

Реалізуйте count_above(values, threshold) без читання глобального threshold. Результат запишіть у count_result.

Завдання 3

Запишіть суму scaled_values у total_result. Виконайте Restart → Run All і перевірте результат.

6. Перевірка і здача

  1. Запустіть самоперевірку та виправте помилки.
  2. Перезапустіть ядро і виконайте роботу ще раз від початку.
  3. Збережіть .ipynb і PDF з кодом та результатами.

Назва PDF: LR33_Прізвище_Група_VNN.pdf.