The code you have will output the least significant digit. To produce the other two digits (knowing that the LMC is limited to 3 digit numbers), first subtract 100 repeatedly and count how many times you could do that: this would be the first digit to output. Then subtract 10 repeatedly and count... and finally output the remainder.
For the repeated subtraction you need a loop. You could consider using self modifying code in order to reuse the same loop for subtracting 100 and later on for subtracting 10. But you might as well write a separate loop for each of these two cases:
#input:321
          INP
          STA input
          LDA zero   ; prepare for finding first digit
          BRA enter1
loop1     STA input
          LDA digit  ; increment digit
          ADD one
enter1    STA digit
          LDA input
          SUB hundred ; output number of 100s
          BRP loop1
          LDA digit
          OUT
          LDA zero   ; prepare for finding second digit
          BRA enter2
loop2     STA input
          LDA digit  ; increment digit
          ADD one
enter2    STA digit
          LDA input
          SUB ten
          BRP loop2
          LDA digit  ; output number of 10s
          OUT
          LDA input  ; output remainder
          OUT
zero      HLT
one       DAT 001
ten       DAT 010
hundred   DAT 100
input     DAT
digit     DAT
<script src="https://cdn.jsdelivr.net/gh/trincot/lmc@v0.80/lmc.js"></script>