Чтение из файла в запись - PascalABC.NET

Узнай цену своей работы

Формулировка задачи:

Во входном файле содержится информация об итогах зимней сессии на первом курсе. Сведения о каждом студенте-первокурснике заданы в виде следующего текста: <Фамилия_ИО>, <номер группы>, <оценка1>, <оценка2>, <оценка3>. Фамилия_ИО - не более 15 символов, номер группы имеет формат "Lnnnn" (L - заглавная буква Б или М, n - цифра 0..9, каждая оценка – 2, 3, 4 или 5, причем первая оценка по матанализу, вторая – по алгебре, третья – по программированию. Написать программу, которая читает из файла эту информацию и печатает следующие данные: а) фамилии студентов, имеющие задолженность хотя бы по одному предмету; б) «качество успеваемости», т.е. % сдачи на 5 и 4; в) название предмета, который был сдан лучше всего; г) номера групп в порядке убывания средней успеваемости студентов группы. Пример данных в файле: Иванов ИИ Б2407 3 4 5 Николаев НН А1703 2 3 3 Отличников ПП А1703 5 5 5 Сидоров СС Б2407 2 2 2 Не понимаю как сделать чтение из файла в запись.

Решение задачи: «Чтение из файла в запись»

textual
Листинг программы
  // Считать и разобрать данные на записи
  var a := New List<tRec>;
  var t : Text;
  Reset(t, inName);
  while Not EOF(t) do
    begin
      var s : String;
      ReadLn(t, s);
      a.Add(parse(s));
    end;
  Close(t);

Объяснение кода листинга программы

В данном коде выполняется следующие действия:

  1. Создается пустой список a для хранения записей.
  2. Создается объект t типа Text, который будет использоваться для чтения из файла.
  3. Устанавливается позиция чтения в начало файла с помощью функции Reset(t, inName).
  4. Запускается цикл while, который будет выполняться до тех пор, пока не достигнут конец файла с помощью функции EOF(t).
  5. Внутри цикла создается переменная s типа String, которая будет использоваться для хранения строки, прочитанной из файла.
  6. С помощью функции ReadLn(t, s) из объекта t считывается строка и сохраняется в переменной s.
  7. С помощью функции parse(s) строка s преобразуется в объект типа tRec и добавляется в список a с помощью метода Add().
  8. После окончания цикла все ресурсы, связанные с объектом t, освобождаются с помощью функции Close(t).

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

13   голосов , оценка 4.385 из 5
Похожие ответы