Ввести последовательность из латинских букв и цифр - Pascal ABC
Формулировка задачи:
Ввести последовательность из латинских букв и цифр. Сформировать множество, состоящее из гласных букв и множество, состоящее из четных чисел. Элементы первого множества вывести в алфавитном порядке, элементы второго множества вывести в порядке убывания.
Решение задачи: «Ввести последовательность из латинских букв и цифр»
textual
Листинг программы
var letters:set of 'a'..'z'; digits:set of 0..9; c:char; n,i:integer; s:string; BEGIN Letters:=[]; Digits:=[]; Readln(s); For i:=1 to Length (s) do begin c:=s[i]; IF c in ['a'..'z'] THEN Letters:=Letters+[c] ELSE begin n:=ord(c)-ord('0'); IF n mod 2 = 0 THEN Digits:=Digits+[n]; end; end; For c:='a' to 'z' do IF c in Letters THEN Write (c, ' '); Writeln ; For n:=9 downto 0 do IF n in Digits THEN Write (n, ' '); END.
Объяснение кода листинга программы
- Создаются два множества символов:
letters
(буквы) иdigits
(цифры). - Создается пустая строка
s
. - Пользователю предлагается ввести строку. Введенная строка сохраняется в переменной
s
. - Строка
s
обрабатывается построчно. - На каждой строке берется символ
c
. - Проверяется, является ли символ буквой. Если да, то он добавляется в множество
letters
. - Если символ не является буквой, то вычисляется его порядковый номер в алфавите (от 0 до 25) и, если он делится на 2 без остатка, то добавляется в множество
digits
. - После обработки всех символов выводятся все буквы и цифры, которые были найдены в строке.
- Выводится символ ' ', пока не будут выведены все буквы.
- Выводится символ ' ', пока не будут выведены все цифры.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д