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

ЛР23. Текстові файли й чиста обробка даних

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

Коректно сформований текстовий файл містить пари name value. Потрібно прочитати його й створити короткий звіт. Варіант визначає STUDENT_X.

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

1. Умова

Коректно сформований текстовий файл містить пари name value. Потрібно прочитати його й створити короткий звіт.

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

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

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

  1. потік
  2. ifstream і ofstream
  3. getline
  4. відділення введення-виведення від обробки

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

Використовуйте поняття, вивчені до Л1–Л10. Не змішуйте відкриття файла та основне підсумкове обчислення в одну неперевірювану функцію.

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

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

Вхідні дані

Поле Зміст
input_file відносний шлях до коректно сформованого файла

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

Поле Зміст
line_count кількість записів
value_sum сума значень
max_name ім’я з найбільшим значенням

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

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

Терміни

  • потік файлу — об’єкт C++ для читання або запису файла.
  • чиста обробка — обчислення над уже прочитаними даними без одночасного читання або запису файла.

Правила

  1. Кожний непорожній рядок вхідного файла має формат name value, де name не містить пробілів, а value — ціле число.
  2. Файл варіанта гарантовано коректний і містить щонайменше один запис.
  3. line_count — кількість записів, value_sum — сума всіх value.
  4. 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. Перевірка і здача

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

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

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