Переписать введенные буквы в алфавитном порядке, а числа в порядке возрастания - Pascal
Формулировка задачи:
Ввести последовательность, состоящая из букв латинского алфавита и целых чисел, меньших 50 Переписать введенные буквы в алфавитном порядке, а числа в порядке возрастания.
Решение задачи: «Переписать введенные буквы в алфавитном порядке, а числа в порядке возрастания»
textual
Листинг программы
{Переписать введенные буквы в алфавитном порядке, а числа в порядке возрастания. } var s: string; x: set of char; y: set of byte; i: byte; ch: char; value, err: integer; begin x := []; y := []; for i := 1 to 5 do begin readln(s); val(s, value, err); if err = 0 then include(y, value) else if s[1] in ['A'..'Z', 'a'..'z'] then include(x, s[1]); end; writeln('Буквы:'); for ch := #32 to #255 do if ch in x then write(x:4); writeln; writeln('Числа:'); for i := 0 to 255 do if i in y then write(y:4); readln; end.
Объяснение кода листинга программы
- Создается переменная
s
для хранения введенной строки. - Создаются переменные
x
иy
- множества символов и байтов соответственно. - Создается переменная
i
для использования в циклах. - Создается переменная
ch
для хранения текущего символа в цикле. - Создается переменная
value
для хранения числового значения. - Создается переменная
err
для хранения кода ошибки в функции val. - Инициализируется пустое множество
x
, иy
. - Производится ввод 5 строк с клавиатуры и последующая обработка этих строк в цикле.
- Проверяется, является ли введенное значение числом (при помощи функции
val
). Если да, добавляется в множествоy
. - Если значение не является числом, проверяется, является ли первый символ строки буквой. Если да, добавляется в множество
x
. - Выводятся все буквы, отсортированные в алфавитном порядке.
- Выводятся все числа, отсортированные в порядке возрастания.
- Программа ожидает ввода пользователя перед завершением.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д