Написать программу, которая считывает текст из файла и выводит на экран только предложения, состоящие из заданного количества слов. - Pascal ABC

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

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

1. Написать программу, которая считывает текст из файла и выводит на экран только предложения, состоящие из заданного количества слов.
Людцы добрые, помогитеееее=)

Решение задачи: «Написать программу, которая считывает текст из файла и выводит на экран только предложения, состоящие из заданного количества слов.»

textual
Листинг программы
uses CRT;
var     fox:text;
      h:array[1..100] of integer;m1:array[1..100]of string;
      i,k,j,n:integer;a,l:char;
Begin
ClrScr;
Assign(fox,'fox3.txt');
reset(fox);
i:=1;j:=1;
while not Eof(fox) do
        begin
        while not Eoln(fox) do
   begin
     read(fox,a);
           m1[i]:=m1[i]+a;
           If a=' ' then inc(j);
     If a='.' then  begin h[i]:=j;inc(i);j:=0;end;
         end;
        readln(fox);j:=1;
end;
close(fox);
Repeat
Writeln('Введите количество слов :');readln(n);
 For j:=1 to i do If h[j]=n then writeln(m1[j]);
Write('Продолжить(Y/N) ');readln(l);
Until l='n';
Writeln('Программа завершена');
end.

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

  1. Установка начального значения переменных:
    • fox:text; - инициализация файла
    • h:array[1..100] of integer; - массив для хранения номеров предложений
    • m1:array[1..100]of string; - массив для хранения текста предложений
    • i,k,j,n:integer; - счетчики для обработки текста
    • a,l:char; - переменные для чтения символов из файла
  2. Открытие файла fox3.txt для чтения
  3. Чтение файла построчно до конца
  4. В каждой строке ищется точка, которая обозначает конец предложения
  5. Если точка найдена, то в массиве h сохраняется номер предложения (переменная j)
  6. После чтения каждой строки, счетчик j сбрасывается в 1
  7. Запрос у пользователя на ввод количества слов
  8. Вывод на экран предложений, которые содержат заданное количество слов
  9. Запрос на продолжение программы (Y/N)
  10. Повторение шагов 8 и 9 до тех пор, пока пользователь не введет n
  11. Завершение программы и вывод соответствующего сообщения

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

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