Определить длину третьего слова текста - Pascal ABC
Формулировка задачи:
Требуется написать программу которая бы определяла длину третьего слова текста.
Решение задачи: «Определить длину третьего слова текста»
textual
Листинг программы
const space = ' '; num_word = 3;
var i, count, ch : byte;
st : string;
BEGIN
WriteLn('Введите строку:');
ReadLn(st);
Insert(space, st, 1);
Insert(space, st, Length(st)+1);
count:= 0;
ch:= 0;
for i:= 1 to length(st) do
begin
if ((st[i]=space) and (st[i+1]<>space)) then
Inc(count);
if count = num_word then
begin
While (st[i+1]<>space) do
begin
Inc(i);
Inc(ch);
end;
break;
end;
end;
WriteLn(ch);
END.
Объяснение кода листинга программы
- const space = ' '; num_word = 3; Здесь определяются две константы: space, равная пробелу, и num_word, равная трём.
- var i, count, ch : byte; Здесь определяются три переменные: i, count и ch, все они типа byte.
- st := ' '; Здесь переменной st присваивается значение ' '.
- WriteLn('Введите строку:'); Выводится сообщение «Введите строку:», чтобы пользователь мог ввести строку.
- ReadLn(st); Чтение ввода пользователя. Строка сохраняется в переменной st.
- Insert(space, st, 1); Вставляется пробел в начало строки.
- Insert(space, st, Length(st)+1); Вставляется пробел в конец строки.
- count := 0; Переменная count инициализируется значением 0.
- ch := 0; Переменная ch инициализируется значением 0.
- for i := 1 to Length(st) do Начинается цикл, который будет выполняться для каждого символа в строке st.
- begin
- if ((st[i] = space) and (st[i + 1] <> space)) then
- Inc(count);
- if count = num_word then
- begin
- While (st[i + 1] <> space) do
- begin
- Inc(i);
- Inc(ch);
- end;
- break;
- end;
- end; — Код проверяет, является ли текущий символ пробелом и следующий символ не пробелом. Если это так, то увеличивается счетчик count. Если count равен num_word, то выполняется следующий блок кода.
- WriteLn(ch); Выводится значение переменной ch, которое представляет количество слов в тексте.