ЛР21. Текстові файли й чиста обробка даних
Коротко про роботу
Коректно сформований текстовий файл містить пари name value. Потрібно прочитати його й створити короткий звіт. Варіант
визначає STUDENT_X.
Відкрити робочий зошит Як виконувати лабораторні
1. Умова
Коректно сформований текстовий файл містить пари name value. Потрібно прочитати його й створити короткий звіт.
Перша комірка зошита лише показує значення вашого STUDENT_X разом із типами. Вона не оголошує і не створює предметні
змінні. У коді кожного завдання перенесіть потрібні значення та самостійно оголосіть/створіть відповідні змінні.
2. Що треба знати
Робота виконується після Л1–Л10. Потрібні поняття:
- потік
ifstreamіofstreamgetline- відділення введення-виведення від обробки
Межа матеріалу
Використовуйте поняття, вивчені до Л1–Л10. Не змішуйте відкриття файла та основне підсумкове обчислення в одну неперевірювану функцію.
3. Варіант, вхідні дані та результат
У зошиті заповніть STUDENT_NAME, STUDENT_GROUP і STUDENT_X від 1 до 30.
Вхідні дані
| Поле | Тип | Зміст |
|---|---|---|
input_file |
std::string |
відносний шлях до коректно сформованого файла |
Поля результату
| Поле | Зміст |
|---|---|
line_count |
кількість записів |
value_sum |
сума значень |
max_name |
ім’я з найбільшим значенням |
Назви полів результату не змінюйте. Перша комірка лише показує значення варіанта і не оголошує предметні змінні. Перед
розв’язанням кожного завдання самостійно оголосіть потрібні вхідні змінні з показаними значеннями. Власні та результуючі
змінні також оголошуйте звичайно, як у лекційних прикладах. Обчислення виконуйте у блоці { ... }; код над блоком
використовуйте лише там, де це позначено. Наприкінці блока вже є службовий рядок самоперевірки для контрольних полів —
його не потрібно писати або змінювати. Формат std::cout обирайте за змістом завдання: спеціального формату для
самоперевірки немає.
4. Терміни і правила
Терміни
- потік файлу — об’єкт C++ для читання або запису файла.
- чиста обробка — обчислення над уже прочитаними даними без одночасного читання або запису файла.
Правила
- Кожний непорожній рядок вхідного файла має формат
name value, деnameне містить пробілів, аvalue— ціле число. - Файл варіанта гарантовано коректний і містить щонайменше один запис.
line_count— кількість записів,value_sum— сума всіхvalue.max_name— ім’я запису з найбільшимvalue. У даних варіанта максимальне значення є однозначним.
Файл звіту
Створіть report.txt у папці лабораторної. Файл має містити рівно три рядки:
count=<line_count>
sum=<value_sum>
max=<max_name>
Після третього рядка має бути фінальний символ нового рядка. Значення у файлі походять із тих самих обчислень, що й поля самоперевірки.
5. Завдання
Завдання 1
Відкрийте файл через ifstream і прочитайте всі непорожні рядки через getline. Виведіть прочитані рядки або їхню
кількість.
Завдання 2
Передайте прочитані записи у функцію обробки. Запишіть line_count, value_sum і max_name.
Завдання 3
Запишіть report.txt у форматі count=..., sum=..., max=.... Прочитайте файл назад і виведіть його вміст.
6. Перевірка і здача
- Запустіть самоперевірку та виправте помилки.
- Перезапустіть ядро і виконайте роботу ще раз від початку.
- Збережіть
.ipynbі PDF з кодом та результатами.
Для роботи з файлами покажіть у зошиті назви створених файлів. Також залиште видимий фрагмент або результат, який підтверджує їхню роботу.
Назва PDF: LR21_Прізвище_Група_VNN.pdf.