So by using % (modulo) it divides the number until it can't be divided any more then returns the remainder

Well no, it just divides it, not

*until it can't be divided any more*, then returns the remainder.

Dividing by a power of ten is a kind of "special case" I guess one could call it, since it has the efect of moving the decimal place.

7%4 is 3, because 7/4 is 1.75, which is 1 remainder 3 (0.75 x 4=3)

123%10 is 3, because 123/10 is 12.3, which is 12 remainder 3 (0.3 x 10 = 3)