Задача на вывод на экран слов, заканчивающихся на определенную букву, слова разделены пробелами - Pascal ABC
Формулировка задачи:
Дан список слов, разделенных между собой пробелами.Составить программу вывода на экран слов, которые заканчиваются на букву Ь.
Решение задачи: «Задача на вывод на экран слов, заканчивающихся на определенную букву, слова разделены пробелами»
textual
Листинг программы
{$MODE TP}
var
s, sWord: String;
c: Char;
begin
Write('Input string: '); ReadLn(s);
Write('Input char: '); ReadLn(c);
s := s + ' '; sWord := '';
while (Length(s) > 0) do
begin
if (s[1] = ' ')
then
begin
if (sWord[Length(sWord)] = c)
then
WriteLn(sWord);
sWord := '';
end
else
sWord := sWord + s[1];
Delete(s, 1, 1);
end;
end.
Объяснение кода листинга программы
- В начале кода объявляются переменные s и sWord типа String, а также переменная c типа Char.
- Затем происходит чтение строки из входных данных и сохранение ее в переменной s.
- Далее происходит чтение символа из входных данных и сохранение его в переменной c.
- Переменная s обновляется путем добавления пробела и пустой строки к ее текущему значению.
- Переменная sWord обновляется путем добавления символа из переменной s к ее текущему значению.
- Затем происходит проверка длины строки s. Если длина больше 0, то выполняется цикл while.
- Внутри цикла проверяется, является ли второй символ строки s пробелом.
- Если это так, то выполняется блок кода внутри if. В этом блоке кода проверяется, заканчивается ли строка sWord на символ c.
- Если это так, то выполняется блок кода внутри else. В этом блоке кода строка sWord обновляется путем добавления второго символа строки s к ее текущему значению.
- После этого удаляется первый символ из строки s.
- Цикл while повторяется, пока длина строки s не станет равной 0.
- По окончании цикла выполняется запись на экран строки sWord.
- Код завершается.