Дана последовательность из n символов. Подсчитать наибольшее число букв 'a' идущих подряд - C (СИ)
Формулировка задачи:
4,1 Дана последовательность из n символов. Подсчитать наибольшее число
букв 'a' идущих подряд в данной последовательности
Решение задачи: «Дана последовательность из n символов. Подсчитать наибольшее число букв 'a' идущих подряд»
textual
Листинг программы
#include <stdio.h> int main(void){ char str[]="abc-bla (aaa), xyz, aaaaaaa"; int i,sch,max; max=1; sch=1; for (i=0; str[i]!='\0'; i++) if (str[i]==str[i+1]&&str[i]=='a') { sch++; if (sch>max) max=sch; } else sch=1; printf("%d",max); return(0); }
Объяснение кода листинга программы
В этом коде:
- Объявляются переменные:
str
- строка символов, в которой нужно найти наибольшее количество букв 'a', идущих подряд.i
- счётчик, используемый в цикле.sch
- счётчик, используемый для подсчёта количества букв 'a', идущих подряд.max
- переменная, в которой будет храниться максимальное количество букв 'a', идущих подряд.
- Устанавливается начальное значение
max
равным 1, так как по умолчанию считается, что любое количество букв 'a', идущих подряд, меньше 1. - Устанавливается начальное значение
sch
равным 1, так как при первом встречном символе 'a' счётчик будет сбрасываться в 1. - Запускается цикл по всем символам строки
str
. - Внутри цикла проверяется, является ли текущий символ 'a', и если да, то проверяется, идут ли подряд ещё буквы 'a'. Если да, то счётчик
sch
увеличивается на 1, и если это значение больше текущего значенияmax
, тоmax
обновляется значениемsch
. - Если текущий символ не 'a', то счётчик
sch
сбрасывается в 1. - После окончания цикла, с помощью функции
printf
выводится значение переменнойmax
. - Возвращается 0, что означает успешный конец работы программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д