ЛР28. Відтворюваний зошит без прихованого стану
Коротко про роботу
Зошит містить залежні обчислення, а старе значення змінної робить випадковий запуск оманливим. Варіант визначає STUDENT_X.
Відкрити робочий зошит Як виконувати лабораторні
1. Умова
Зошит містить залежні обчислення, а старе значення змінної робить випадковий запуск оманливим.
Усі обчислення виконуйте з даними свого STUDENT_X. Значення варіанта друкує перша комірка зошита.
2. Що треба знати
Робота виконується після Л1–Л11. Потрібні поняття:
- стан зошита
- порядок комірок
Restart → Run All- відтворюваність
Межа матеріалу
Використовуйте поняття, вивчені до Л1–Л11. Не залишайте ручну комірку, яку треба запускати поза порядком для отримання правильного результату.
3. Варіант, вхідні дані та результат
У зошиті заповніть STUDENT_NAME, STUDENT_GROUP і STUDENT_X від 1 до 30.
Вхідні дані
| Поле | Зміст |
|---|---|
a |
перша складова |
b |
друга складова |
factor |
множник |
stale_base |
старе значення для діагностики |
Поля результату
| Поле | Зміст |
|---|---|
base_result |
a+b після чистого запуску |
final_result |
base_result*factor |
fresh_run_ok |
ознака відтворюваного виконання |
Назви полів результату не змінюйте.
4. Терміни і правила
Терміни
- прихований стан зошита — значення, що залишилося в пам’яті від попереднього запуску комірки, хоча поточний порядок комірок його не створює.
- відтворюваність — однаковий результат після команди
Restartі послідовногоRun All.
Правила
- Правильна залежність задається двома виразами:
base = a + b, потімresult = base * factor. stale_baseімітує значення, що залишилося від старого запуску. Воно не входить до правильного чистого запуску результату.base_resultіfinal_resultмають відтворюватися післяRestart → Run All.fresh_run_okмає бутиtrueлише після успішного запуску з чистого стану.
Початковий сценарій зошита
Уявіть, що попередній запуск залишив у пам’яті base = stale_base. Потрібна версія зошита, яка правильно працює після чистого перезапуску.
Цільові залежності задачі такі:
base = a + b
result = base * factor
Самостійно розмістіть визначення й використання у комірках так, щоб випадковий порядок старого запуску більше не впливав на результат.
5. Завдання
Завдання 1
Обчисліть base = a + b, потім result = base * factor. Запишіть base_result і final_result.
Завдання 2
Приберіть залежність від stale_base. Одним реченням поясніть, чому вибірковий запуск комірок приховував помилку.
Завдання 3
Виконайте Restart → Run All. Якщо результат відтворився, запишіть fresh_run_ok = True.
6. Перевірка і здача
- Запустіть самоперевірку та виправте помилки.
- Перезапустіть ядро і виконайте роботу ще раз від початку.
- Збережіть
.ipynbі PDF з кодом та результатами.
Назва PDF: LR28_Прізвище_Група_VNN.pdf.