Sicherlich werde ich den Fließkomma-Datentyp weiterhin brauchen, da ich sonst keine Exponente < 0 verwenden kann.
Das kannst du mit dieser Berechnung sowieso nicht.
Du rechnest ja nur mit
res := res * base;
, also mit ganzen Vielfachen von "base",
womit du also nur ganzzahlige positive Exponenten verwenden kannst.