Записать в новый файл все слова, начинающиеся с определенной буквы - Turbo Pascal
Формулировка задачи:
Дан текстовый файл с текстом не менее 15 строк. Записать
в новый файл все слова, начинающиеся с определенной буквы.
Буква вводится по запросу пользователя.
Решение задачи: «Записать в новый файл все слова, начинающиеся с определенной буквы»
textual
Листинг программы
Var f,g:text; s,st:string; k:byte; ch:char; Begin Assign(f,'in.txt');Reset(f); Assign(g,'out.txt');Rewrite(g); write('Буква: ');readln(ch); While not Eof(f) do Begin readln(f,s); s:=s+' ';k:=0; While Pos(' ',s)>0 do Begin st:=Copy(s,1,Pos(' ',s)-1); Delete(s,1,Pos(' ',s)); if st<>'' then if st[1]=ch then Begin write(g,st+' '); inc(k); End; End; if k>0 then writeln(g); End; writeln('Результат в файле "out.txt"'); Close(f);Close(g); readln; End.
Объяснение кода листинга программы
- В начале кода объявляются переменные: f, g, s, st, k, ch, которые будут использоваться для работы с файлами и строками.
- Затем происходит назначение файлов: f присваивается значение 'in.txt', а g - 'out.txt'.
- После этого происходит чтение символа 'Буква: ' и его сохранение в переменной ch.
- Далее, в цикле While не Eof(f) do, происходит чтение строки s из файла f и ее сохранение в переменной s. Также инициализируется переменная k, которая будет отслеживать количество слов.
- Внутри цикла While Pos(' ',s)>0 do происходит разделение строки s на подстроки, начинающиеся с пробела, и их сохранение в переменной st. Затем удаляется первый символ из строки s.
- Если в строке st есть слово, начинающееся с символа ch (который был прочитан на предыдущем шаге), то оно записывается в файл g с добавлением пробела.
- После каждого записанного слова увеличивается значение переменной k.
- По завершении цикла k проверяется на значение больше 0. Если это так, то выводится сообщение 'Результат в файле
out.txt
'. - В конце кода происходит закрытие файлов f и g с помощью функций Close(f), Close(g).
- Конец программы обозначен командой readln.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д