Найти наиболее часто повторяющиеся буквы - Free Pascal
Формулировка задачи:
Решение задачи: «Найти наиболее часто повторяющиеся буквы»
- var
- s : string;
- t : string = '';
- l : integer = 0;
- c : array[char] of integer;
- ch : char;
- begin
- write('Enter string:'); readln(s);
- for ch in s do if ch in ['a'..'z','A'..'Z','А'..'Я','а'..'п','р'..'я','ё','Ё'] then
- begin
- inc(c[ch]);
- if c[ch] = l then
- begin
- if pos(ch, t) = 0 then t := t + ch
- end
- else if c[ch] > l then
- begin
- l := c[ch]; t := ch;
- end;
- end;
- if l = 1 then writeln('no repeating')
- else writeln('max repeating letter(s) : "', t, '", count = ', l);
- end.
Объяснение кода листинга программы
В этом коде происходит поиск наиболее часто повторяющихся букв в строке, введенной пользователем. Код использует ассоциативный массив (в данном случае, массив c), чтобы подсчитать количество каждого символа в строке. Затем код проверяет, является ли текущий символ наиболее часто повторяющимся символом. Если это так, он добавляет символ в строку t и обновляет счетчик l. Если символ не является наиболее часто повторяющимся, но его счетчик больше, чем у текущего наиболее часто повторяющегося символа, код обновляет значение t и сбрасывает счетчик l. В конце кода выводится сообщение, указывающее наиболее часто повторяющуюся букву (или сообщение о том, что такая буква отсутствует).
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д