Найти в строке слово, в котором повторяется а - Turbo Pascal
Формулировка задачи:
найти в строке слово в котором повторяется а
Решение задачи: «Найти в строке слово, в котором повторяется а»
textual
Листинг программы
uses crt; var s,s1:string; i,j,k,q:integer; begin clrscr; writeln('Введите строку из слов, разделенных пробелами'); readln(s); s:=' '+s+' '; //добавим пробелы в начало и в конец для удобства writeln('Слова с повторяющейся буквой а'); i:=1; q:=0; while i<length(s) do//идем по строке if (s[i]<>' ')and(s[i-1]=' ') then //если не пробел, а перед ним пробел, новое слово begin s1:=''; j:=i; while(j<=length(s))and(s[j]<>' ') do //составим его begin s1:=s1+s[j]; j:=j+1; end; k:=0; for j:=1 to length(s1) do if s1[j]in['a','а'] then inc(k); //латинская и русская буквы а if k>1 then begin writeln(s1); q:=1; end; i:=i+length(s1);//перешагиваем через слово end else i:=i+1; //пропускаем пробелы if q=0 then write('Таких слов нет'); readln end.
Объяснение кода листинга программы
- Ввод строки из слов, разделенных пробелами.
- Добавление пробелов в начало и в конец строки для удобства обработки.
- Вывод слов с повторяющейся буквой
а
. - Переменные:
- i, j, k, q (целые числа)
- s, s1 (строки)
- Цикл по всем символам строки.
- Проверка, является ли текущий символ пробелом, предшествующим не пробельному символу.
- Если условие выполняется, то начинается обработка нового слова.
- Строка s1 инициализируется пустой строкой.
- Цикл по всем символам нового слова.
- Каждый символ добавляется в строку s1.
- Переменная k инициализируется нулем.
- Цикл по всем символам строки s1.
- Проверка, является ли текущий символ
а
илиА
. - Если условие выполняется, то увеличивается значение переменной k.
- Если значение переменной k больше 1, то выводится текущее слово и устанавливается значение переменной q равным 1.
- Переменная i увеличивается на длину текущего слова.
- Если значение переменной q равно 0, то выводится сообщение
Таких слов нет
. - Ввод с клавиатуры.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д