Распечатки строк файла в обратном порядке - Free Pascal
Формулировка задачи:
Напишите процедуру для вывода на экран N-й строки файла, где N —
параметр процедуры. Воспользовавшись этой процедурой, напишите программу
для распечатки строк файла в обратном порядке. Подсказка: предварительно
посчитайте количество строк в файле.
Решение задачи: «Распечатки строк файла в обратном порядке»
textual
Листинг программы
var f:text; s:string; n:integer; procedure vivod(i:integer); var F: text; S: string; begin n:=0; Assign(F, '25_д.txt'); Reset(F); while not Eof(F) do begin Readln(F, S); n:=n+1; if n=i then Writeln(S); end; Close(F); end; //main begin write('vvedite stroky '); readln(i); vivod(i); end.
Объяснение кода листинга программы
В данном коде на языке Free Pascal реализована функция, которая выводит на экран строки из файла, но в обратном порядке. Список действий, которые происходят в коде:
- Объявление переменных:
- f:text;
- s:string;
- n:integer;
- F: text;
- S: string.
- Создание процедуры vivod, которая принимает целочисленный параметр i.
- Внутри процедуры объявление переменных F и S.
- Инициализация переменной n значением 0.
- Открытие файла '25_д.txt' с помощью функции Assign и установка позиции чтения в начало файла с помощью функции Reset.
- Запуск цикла while, который будет выполняться до тех пор, пока не будет достигнут конец файла (Eof).
- Внутри цикла считывание строки из файла в переменную S с помощью функции Readln.
- Увеличение значения переменной n на 1.
- Если значение переменной n равно i (которое вводится пользователем в качестве аргумента), то вывод строки S на экран с помощью функции Writeln.
- Закрытие файла F с помощью функции Close после окончания цикла.
- В основной части программы вывод сообщения
vvedite stroky
для ввода пользователем нужного числа строк. - Считывание введенного пользователем числа строк в переменную i с помощью функции readln.
- Вызов процедуры vivod с переданным аргументом i.
- Завершение программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д