Подсчитать количество символов, следующих за первой буквой М и напечатать эти символы - Pascal
Формулировка задачи:
Дан текст за которым следует точка. Подсчитать количество символов, следующих за первой буквой М и напечатать эти символы.(задача на строки). Нужен текст программы, и алгоритм).
Решение задачи: «Подсчитать количество символов, следующих за первой буквой М и напечатать эти символы»
textual
Листинг программы
var s: string;
p: integer;
begin
writeln('Введите строку:');
readln(s);
p := pos('M', s);
if p = 0
then write('В строке нет буквы "M"')
else if p = length(s)
then write('Буква "M" - последняя в строке')
else begin
writeln('Количество символов, следующих за "M": ', length(s) - p);
writeln('Символы, следующие за "M":');
writeln(copy(s, p + 1, length(s)))
end;
readln
end.
Объяснение кода листинга программы
- Объявление переменных:
- s: строка
- p: целое число
- Вывод сообщения:
- Выводится сообщение
Введите строку:, ожидая ввода пользовательской строки.
- Выводится сообщение
- Чтение ввода:
- Пользователь вводит строку, которая сохраняется в переменной s.
- Поиск позиции буквы
M:- Определяется индекс первого вхождения буквы
Mв строке с помощью функции pos('M', s), результат сохраняется в переменной p.
- Определяется индекс первого вхождения буквы
- Проверка наличия буквы
Mв строке:- Если p равно 0, то выводится сообщение
В строке нет буквыM``.
- Если p равно 0, то выводится сообщение
- Проверка последнего вхождения буквы
Mв строке:- Если p равно длине строки s, то выводится сообщение
БукваM- последняя в строке.
- Если p равно длине строки s, то выводится сообщение
- Вывод информации о количестве символов после
M:- Если переменная p находится внутри пределов длины строки s, выводится количество символов, следующих за
M. - Затем выводится подстрока, начиная с символа, следующего за
Mдо конца строки с помощью функции copy(s, p + 1, length(s)).
- Если переменная p находится внутри пределов длины строки s, выводится количество символов, следующих за
- Ожидание ввода:
- Ожидание нажатия клавиши перед закрытием программы. Примечание: Последняя строка readln без параметров ожидает нажатия клавиши перед закрытием программы.