zadach286.BAS

{* Задача286 *}

REM basic

' На вход программе подается последовательность цифр. Ввод этих символов заканчивается точкой (другие символы, отличные от "." и цифр "0".."9", во входных данных отсутствуют; в программе на языке Бейсик символы можно вводить по одному в строке, пока не будет введена точка). Требуется написать эффективную программу, которая будет печатать цифры, встречающиеся во входной последовательности, в порядке увеличения частоты их встречаемости.


CLS
Dim a(9)
INPUT b$
For i = 1 To LEN(b$) - 1
    q = ASC(Mid$(b$, i, 1)) - ASC("0")
    a(q) = a(q) + 1
Next
For i = 0 To 9
    If a(i)  0 Then w = w + 1
Next
For i = 1 To w
    min = LEN(b$) + 1
    a(k) = 0
    For j = 9 To 0 Step -1
        If a(j) > 0 And a(j) = 0 Then c$ = c$ + CHR$(ASC("0") + k)
Next
PRINT c$