Паскаль: обробка текстів, Детальна інформація
Паскаль: обробка текстів
while not eof(f) do
begin
read (f, x); {???}
обробка x
end,
де x – змінна-рядок, читаються лише символи першого рядка тексту, після чого кінець рядка залишається доступним "назавжди". Цикл собі виконується, комп’ ютер "висить", а користувач програми починає нервувати й лаятися.
Коли при читанні рядка доступний кінець тексту, він аналогічно залишається доступним, а змінній-рядку присвоюється значення '' (порожній рядок).
Читання символів і рядків за процедурою readln аналогічне процедурі read, але після читання символів решта рядка тексту пропускається, тобто доступним стає символ, наступний за найближчим eol. Радимо задавати читання рядків за допомогою процедури readln.
Список імен змінних у виклику може бути порожнім; у такому разі при виклику readln(f) пропускається поточний рядок тексту.
Приклад 4. Нехай діють означення
f : text; c1, c2 : char; s1, s2 : string[4],
а eol явно позначає кінець рядка в тексті, з яким зв’ язано f:
t r u e eol
f a l s e eol
eol
Після виклику
read (f, c1, c2, s1, s2 )
змінні набудуть значень: c1=' ', c2='t', s1='rue' та s2=''; доступним буде перший із указаних eol. Якщо далі виконати read(f, c1, c2), то значеннями с1 і c2 будуть chr(13) і chr(10), а доступним стане символ f.
За такого самого тексту виклик
readln (f, s1, c1, c2, s2 )
надає змінним значень s1=' tru', c1='e', c2=chr(13), s2=chr(10)+'fal'. Символи 's' і 'e' пропускаються, і доступним стає третій eol, тобто chr(13).\xF0E7
Задачі
7.* Указати значення, одержані пpи читанні тексту f змінними
var c, c1 : char; i : integer; r : real; s, s1, s2 : string,
пpи виконанні послідовності опеpатоpів
read( f, c, i, r, s );
readln( f, s1 ); readln( f, s2 );
readln( f, c1 ),
begin
read (f, x); {???}
обробка x
end,
де x – змінна-рядок, читаються лише символи першого рядка тексту, після чого кінець рядка залишається доступним "назавжди". Цикл собі виконується, комп’ ютер "висить", а користувач програми починає нервувати й лаятися.
Коли при читанні рядка доступний кінець тексту, він аналогічно залишається доступним, а змінній-рядку присвоюється значення '' (порожній рядок).
Читання символів і рядків за процедурою readln аналогічне процедурі read, але після читання символів решта рядка тексту пропускається, тобто доступним стає символ, наступний за найближчим eol. Радимо задавати читання рядків за допомогою процедури readln.
Список імен змінних у виклику може бути порожнім; у такому разі при виклику readln(f) пропускається поточний рядок тексту.
Приклад 4. Нехай діють означення
f : text; c1, c2 : char; s1, s2 : string[4],
а eol явно позначає кінець рядка в тексті, з яким зв’ язано f:
t r u e eol
f a l s e eol
eol
Після виклику
read (f, c1, c2, s1, s2 )
змінні набудуть значень: c1=' ', c2='t', s1='rue' та s2=''; доступним буде перший із указаних eol. Якщо далі виконати read(f, c1, c2), то значеннями с1 і c2 будуть chr(13) і chr(10), а доступним стане символ f.
За такого самого тексту виклик
readln (f, s1, c1, c2, s2 )
надає змінним значень s1=' tru', c1='e', c2=chr(13), s2=chr(10)+'fal'. Символи 's' і 'e' пропускаються, і доступним стає третій eol, тобто chr(13).\xF0E7
Задачі
7.* Указати значення, одержані пpи читанні тексту f змінними
var c, c1 : char; i : integer; r : real; s, s1, s2 : string,
пpи виконанні послідовності опеpатоpів
read( f, c, i, r, s );
readln( f, s1 ); readln( f, s2 );
readln( f, c1 ),
The online video editor trusted by teams to make professional video in
minutes
© Referats, Inc · All rights reserved 2021