Найти максимальное повторение гласной и согласной буквы в тексте - 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.

Объяснение кода листинга программы

  1. Создаются две константы: sog и gl, которые содержат наборы букв для поиска.
  2. Создается переменная s типа string для хранения введенной строки.
  3. Создается массив a типа array ['A'..'Z'] of integer для подсчета количества каждой буквы в строке.
  4. Запускается цикл For для каждой буквы в строке.
  5. Внутри цикла буква преобразуется в верхний регистр и присваивается переменной c.
  6. Проверяется, содержится ли эта буква в константе sog. Если да, то проверяется, сколько раз она встречается в строке.
  7. Если буква встречается больше, чем mx1, то mx1 обновляется и присваивается значение этой буквы. Также присваивается значение c переменной sogl.
  8. Если буква не содержится в константе sog, то аналогичные действия выполняются для переменной mx2 и буквы из константы gl.
  9. После завершения цикла выводится сообщение, если mx1 равно 0, то В строке нет согласных букв! иначе Наиболее частая согласная буква [sogl] повторяется [mx1] раз(а).
  10. Аналогично выводится сообщение для переменной mx2.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 3.6 из 5
Похожие ответы