Дано произвольный текст заканчивающийся символом "*". Выписать из этого текста все гласные буквы и расположить их алфавиту - Pascal ABC
Формулировка задачи:
Помогите пожалуйста с задачей, работает не совсем правильно, вот как я думал
Решение задачи: «Дано произвольный текст заканчивающийся символом "*". Выписать из этого текста все гласные буквы и расположить их алфавиту»
textual
Листинг программы
program VAS10; uses crt; const abetka='АаЕеЄєИиІіЇїОоУуЮюЯя'; var i, j: integer; s, masgol: string; c: char; begin writeln('Введите предложение, конец ввода *'); s:=''; repeat c:=readkey; write(c); s:=s+c; if c='*' then writeln until c='*'; masgol:=''; for j := 1 to length(s) do if pos(s[j],abetka)>0 then masgol:=masgol+s[j]; if masgol='' then begin write('Гласных букв нет'); exit end; writeln ('Начальные данные: '); writeln (masgol); writeln('Гласные буквы по алфавиту: '); for i:=1 to length(masgol)-1 do for j:=i+1 to length(masgol) do if pos(masgol[i],abetka)>pos(masgol[j],abetka) then begin c:=masgol[i]; masgol[i]:=masgol[j]; masgol[j]:=c; end; write(masgol) end.
Объяснение кода листинга программы
Этот код написан на языке Pascal ABC и выполняет следующие действия:
- Получает от пользователя произвольный текст, который заканчивается символом
*
. - Сохраняет полученный текст в переменной
s
. - Повторяет цикл до тех пор, пока пользователь не введет символ
*
. - Сохраняет результат в переменной
masgol
. - Если
masgol
остается пустым после цикла, выводит сообщениеГласных букв нет
и завершает программу. - Иначе выводит начальные данные, т.е.
masgol
. - Затем выводит список гласных букв в алфавитном порядке, используя алгоритм сортировки, описанный в цикле
for
. - Выводит итоговый результат -
masgol
.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д