It's not that I think the idea is terrible. It's just that it is too unreliable and slow. I am hoping to come up with some solution that has a big-O of n or n*m instead of infinity. Looping possibly endlessly (absolute worst case) to keep multiplying (another big-O of n*m not to mention the resources it consumes) simply to compare is just feels too brute-force.
Well, I'd first check to see if the divisor * 100000 is less than the number being divided. If it is, then I'd multiply what I'm dividing by by 100000 and when I increment the current number of runs where the subtraction is greater than 0, increment it by 100000.
You do see that this would cause my division to be recursive right? If I have a 20 digit denominator and I keep multiplying to get up to the numerator then divide my 20+ digits by 10, the 10 will be multiplied continuously until it reaches that 20+ digits at which point it will be divided by 10.
Then, once it's below 0, divide by 10, increment by 10000, etc.