Найти максимальное повторение гласной и согласной буквы в тексте - Pascal ABC
Формулировка задачи:
Помогите..пока буквы были строчными работала, использовал UpCase выдает только гласные. Исправьте, пожалуйста
Решение задачи: «Найти максимальное повторение гласной и согласной буквы в тексте»
textual
Листинг программы
const sog=['B','C','D','F','G','H','J','K','L','M','N','P','Q','R','S','T','V','W','X','Z']; gl=['A','E','Y','U','I','O']; var s:string; a:array ['A'..'Z'] of integer; i,mx1,mx2:integer; c,sogl,glas:char; begin writeln('Введите строку:'); readln(s); For c:='A' to 'Z' do a[c]:=0; For i:=1 to Length(s) do begin c:=Upcase(s[i]); a[c]:=a[c]+1; end; mx1:=0; mx2:=0; For c:='A' to 'Z' do begin IF c in sog THEN begin IF a[c]>mx1 THEN begin mx1:=a[c]; sogl:=c; end; end ELSE begin IF a[c]>mx2 THEN begin mx2:=a[c]; glas:=c; end; end; end; if mx1=0 then write('В строке нет согласных букв!') else write('Наиболее частая согласная буква ',sogl,' повторяется ',mx1,' раз(а)'); writeln; if mx2=0 then write('В строке нет гласных букв!') else write('Наиболее частая гласная буква ',glas,' повторяется ',mx2,' раз(а)'); end.
Объяснение кода листинга программы
- Создаются две константы: sog и gl, которые содержат наборы букв для поиска.
- Создается переменная s типа string для хранения введенной строки.
- Создается массив a типа array ['A'..'Z'] of integer для подсчета количества каждой буквы в строке.
- Запускается цикл For для каждой буквы в строке.
- Внутри цикла буква преобразуется в верхний регистр и присваивается переменной c.
- Проверяется, содержится ли эта буква в константе sog. Если да, то проверяется, сколько раз она встречается в строке.
- Если буква встречается больше, чем mx1, то mx1 обновляется и присваивается значение этой буквы. Также присваивается значение c переменной sogl.
- Если буква не содержится в константе sog, то аналогичные действия выполняются для переменной mx2 и буквы из константы gl.
- После завершения цикла выводится сообщение, если mx1 равно 0, то
В строке нет согласных букв!
иначеНаиболее частая согласная буква [sogl] повторяется [mx1] раз(а)
. - Аналогично выводится сообщение для переменной mx2.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д