Перевод в верхний регистр - PascalABC.NET
Формулировка задачи:
В заданной строке надо перевести первую букву каждого слова в верхний регистр. Разделителями слов являются пробелы и знаки препинания. Поможете?
Решение задачи: «Перевод в верхний регистр»
textual
Листинг программы
const rz=[' ','.',',','!','?',';']; var s:string; i:byte; begin writeln('Введите строку из слов, составленных из малых латинских букв'); readln(s); for i:=1 to length(s) do if not(s[i] in rz)and((i=1)or(s[i-1] in rz)) then s[i]:=upcase(s[i]); write(s); end.
Объяснение кода листинга программы
- В первой строке объявляется константа rz, которая содержит символы, обозначающие конец слова: пробел, точка, запятая, восклицательный и вопросительный знаки, точка с запятой.
- Вторая строка объявляет переменную s типа string, которая будет использоваться для ввода строки.
- Третья строка объявляет переменную i типа byte, которая будет использоваться в цикле.
- В четвертой строке выводится сообщение с просьбой ввести строку.
- В пятой строке выполняется чтение строки и сохранение ее в переменной s.
- В шестой строке начинается цикл, который проходит по каждому символу в строке.
- В седьмой строке проверяется, является ли текущий символ одним из символов, обозначающих конец слова.
- Если символ не является концом слова и следующий символ не является концом слова, то текущий символ преобразуется в верхний регистр.
- В конце программы выводится строка s.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д