DFGR BNC.
Рис. 4.2. Результат работы PRG4_7 Задача 4.8 Дана строка символов до точки. Группы символов в ней между группами пробелов считаются словами. Посчитать, сколько слов содержит данная строка. При решении данной задачи следует обратить внимание на три важные особенности. Во-первых, основная сложность заключается в том, что слова могут быть разделены группой пробелов. Если бы слово от слова отделялось только одним пробелом, то мы могли бы посчитать количество пробелов и вычислить количество слов. В нашем случае необходимо ввести логический флаг F, по которому можно определять начало слова (F:= TRUE) и конец слова (F:= FALSE). При первом символе слова флаг поднимается, на первом пробеле за словом флаг опускается. Во-вторых, по условию задачи текст вводится до точки, т. е. все слова за первой точкой игнорируются. В-третьих, последнее слово в тексте может обрабатываться не совсем корректно. Если между последним словом и точкой есть хотя бы один пробел, то флаг F позволит обработать его. Если последнее слово кончается на точку, то счетчик слов его не обработает, т. к. флаг не найдет конца слова. В этом случае значения счетчика слов нужно увеличивать на единицу по выходе из цикла обработки. PROGRAM PRG4_8; VAR STR: STRING; К, L, I: INTEGER; F: BOOLEAN; BEGIN WRITELN('BBEДИTE ТЕКСТ ДО ТОЧКИ');
|