Ah! Thank you.
It of course makes sense about the extra operations to use an integer. I suspect a "float" will be much worse, but not tested yet! Now I understand why a short piece of code using a float, is so much bigger than using integers in much longer code. A valuable lesson indeed.
Yes, floating point operations are incredibly slow and cumbersome. That is why computers have included a hardware Floating Point Unit (FPU) to do the work for them. These have been around for many many years, but only really started being included by default with the 486 DX range of chips. Others had add-on chips that could be connected up (like the 68881 for Amiga / early MAC computers using the Motorola 68000 family of CPUs, etc). Now they are standard in all CPUs in use in "normal" computers. Theoretically it is perfectly feasible to add an FPU as an external component to an MCU, but I'm not aware of any with "simple" interfaces that would be easy to wire up, and for the cost it'd be better to start off with an MCU with an FPU in it already.