Задание 4 Урок 20 Вопрос по чтению файла
Primary tabs
Дан текстовый файл, в котором с в ASCII-стиле нарисованы цепочки из цифр, которые связаны по горизонтали и вертикали.
Все цепочки составляют одно дерево, которое устроено так:
- всегда есть общий корень и это цифра
- по горизонтали цепочка не разрывается пробелами, соединяется же с помощью последовательностей знака - (тире).
- по вертикали цепочка не разрывается переносом строк, соединяется же с помощью вертикальных последовательностей символа | (вертикального разделителя).
Размер схемы не более чем 100 на 100 символов.
Примеры:
1------4--------------5-------6--------7 | | | |-------5---------8 | |-------6--------7--7-------9------8---1----5---3Ответ: 10
Вопрос:
не могу разобраться с чтением файла, строка без горизонтальных тире не читается как новая, это у меня какой-то косяк с чтением файла или нужно алгоритмически как-то это обрабатывать?
вот мой код
Var f1:text; i: integer; filename, s: string; begin filename := '/home/serg/Desktop/pascal/lesson_20_task_4/file/1.txt'; // путь к файлу assign(f1, filename); reset(f1); while not eof(f1) do begin readln(f1, s); for i:=1 to length(s) do begin write(s[i]); end; end; readln(); end.
вот файл:
1------4--------------5-------6--------7 | | | |-------5---------8 | |-------6--------7--7-------9------8---1----5---3
который читается и выводится вот так:
1------4--------------5-------6--------7 | | | |-------5---------8 | |-------6--------7--7-------9------8---1----5---3
- Log in to post comments
- 503 reads
vedro-compota
Fri, 12/08/2023 - 15:29
Permalink
тут есть подозрение, что
тут есть подозрение, что перенос строки на деле вообще не попадает как символ, при чтении через
Скорее всего в лазарусе в линуксе (как я понимаю это линукс) в этом окне строки переносятся просто из-за ширины, измените размер этого окна (перетянуть мышкой можно если зажать ее на левой границе напр., или вообще все окно лазаруса в размере изменить) и запустите код еще раз не меняя размеров окна
- остануться ли те же самые переносы?
Еще вариант - попробуйте создать файл с содержимым типа:
И распечатайте его тем же кодом, что получится?
Исходное сообщение не правим, ответы пишите в комментариях
_____________
матфак вгу и остальная классика =)
Sergv1004
Fri, 12/08/2023 - 18:54
Permalink
получается вот что:
Да это линукс
получается вот что:
как я понял не читается перенос сроки?
vedro-compota
Sat, 12/09/2023 - 17:58
Permalink
сначала предлагаю сделать то
сначала предлагаю сделать то что выше, что получилось при распечатке файла
?
_____________
матфак вгу и остальная классика =)
Sergv1004
Sat, 12/09/2023 - 21:59
Permalink
распечатывает в строку
распечатывает в строку