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>