ЛР39. Модулі й багатофайловий конвеєр
Коротко про роботу
Робочий скрипт треба розділити на повторно використовуване перетворення, підсумок і модуль координації. Варіант визначає STUDENT_X.
Відкрити робочий зошит Як виконувати лабораторні
1. Умова
Робочий скрипт треба розділити на повторно використовуване перетворення, підсумок і модуль координації.
Усі обчислення виконуйте з даними свого STUDENT_X. Значення варіанта друкує перша комірка зошита.
2. Що треба знати
Робота виконується після Л1–Л15. Потрібні поняття:
- модуль
- імпорт
- відкрита функція
- багатофайловий конвеєр
Межа матеріалу
Використовуйте поняття, вивчені до Л1–Л15. Не використовуйте глобальні імена зошита як приховану залежність функцій модуля.
3. Варіант, вхідні дані та результат
У зошиті заповніть STUDENT_NAME, STUDENT_GROUP і STUDENT_X від 1 до 30.
Вхідні дані
| Поле | Зміст |
|---|---|
values |
числова послідовність |
factor |
множник |
Поля результату
| Поле | Зміст |
|---|---|
transformed |
результат модуля перетворення |
total |
сума |
max_value |
найбільше перетворене значення |
Назви полів результату не змінюйте.
4. Терміни і правила
Терміни
- модуль — окремий файл Python, який можна імпортувати.
- відкритий інтерфейс — імена функцій, через які інший модуль користується вашим кодом.
- конвеєр — послідовність етапів, де результат одного етапу стає входом наступного.
Правила
- Модуль перетворення має відкриту функцію, яка множить кожний елемент
valuesнаfactorі повертає новий список. - Модуль підсумку отримує перетворений список та повертає його суму і найбільше значення.
- Головний скрипт імпортує обидва модулі та передає дані між ними через відкритий інтерфейс.
transformed,totalіmax_valueмають відтворюватися після чистого перезапуску.
Файли рішення
Рішення складається з трьох файлів у папці лабораторної: transformations.py, summary.py і main.py.
transformations.pyекспортуєscale_values(values, factor).summary.pyекспортуєsummarize(values).main.pyімпортує обидві функції, передає дані варіанта та формуєtransformed,total,max_value.
Внутрішню реалізацію функцій і декомпозицію допоміжного коду визначає студент.
5. Завдання
Завдання 1
У transformations.py реалізуйте scale_values(values, factor). Результат запишіть у transformed.
Завдання 2
У summary.py реалізуйте summarize(values). Для transformed запишіть total і max_value.
Завдання 3
У main.py імпортуйте обидві функції та виведіть три результати. Перезапустіть ядро й повторіть запуск.
6. Перевірка і здача
- Запустіть самоперевірку та виправте помилки.
- Перезапустіть ядро і виконайте роботу ще раз від початку.
- Збережіть
.ipynbі PDF з кодом та результатами.
Для роботи з файлами покажіть у зошиті назви створених файлів. Також залиште видимий фрагмент або результат, який підтверджує їхню роботу.
Назва PDF: LR39_Прізвище_Група_VNN.pdf.