If modulo(%) is same as "remainder(r)" for positive numbers then why does "0.86%1" gives "0.86" as result and not "0" since "0.86/1 = 0.86" with remainder=0.
I have seen other questions but none of them address the moduling with 1 condition. The only way I have been able to make sense of this is by thinking that 0.86 is smaller than 1 and so cannot be divided by one thus returning 0.86 as remainder.
You say
Well, only in the sense that 5/2 = 2.5 with remainder 0, and it's clear that something's wrong with that, right?
When we talk about remainders, the quotient has to be an integer. It can't be 2.5 or 0.86. If you take away as many multiples of the divisor from the dividend as you can, what's left is the remainder. For 5/2, we have
For 0.86/1, we have