Составить из имеющихся цифр максимально возможное число - Turbo Pascal (29559)
Формулировка задачи:
С клавиатуры вводится строка, содержащая буквы и цифры. Составить из имеющихся цифр максимально возможное число.
Решение задачи: «Составить из имеющихся цифр максимально возможное число»
textual
Листинг программы
var a: array ['0'..'9'] of Integer; c: Char; begin while not EoLn do begin Read(c); if c in ['0'..'9'] then Inc(a[c]); end; for c:='9' downto '0' do for i:=1 to a[c] do Write(c); end.
Объяснение кода листинга программы
- Создается переменная
a, которая представляет собой массив целых чисел от 0 до 9. - Создается переменная
c, которая будет использоваться для чтения символа с консоли. - Запускается цикл
while, который будет выполняться до тех пор, пока не будет достигнут конец строки (EoLn). - Внутри цикла
whileсчитывается символ с консоли и проверяется, принадлежит ли он диапазону от 0 до 9. Если да, то значение этого символа увеличивается на единицу в массивеa. - После завершения цикла
whileначинается циклfor, который проходит по всем символам в массивеaот наибольшего до наименьшего значения. - В каждой итерации цикла
forвыводится на экран соответствующий символ из массиваa. - После завершения цикла
forциклwhileзавершается.