Coincido con ChatGPT y las respuestas dadas en el hilo.
Solamente quiero agregar un detalle a tu (donde tú = imaginaryboy)
descripción del formato de punto flotante.
De acuerdo a los estándares vigentes, hay 1 bit adicional en la mantisa,
el cual no se representa.
Si la mantisa es M, la precisión de la mantisa es P,
el exponente es E, el corrimiento del exponente es B,
y el signo es S,
el número representado es:
\[ x = (-1)^S\cdot(1+M/2^P)\cdot 2^{E-B}. \]
Es claro que al sumar 1 al exponente repetidamente se alcanza un tope,
y lo mismo pasa al restar 1 repetidamente.
Así que hay que ser conciente de esa limitación al usar la solución propuesta,
que puede dar errores de overflow o underflow con valores extremos del exponente.