Bien, pensemos en esto.
Tenemos $t = \log_b n; b^t = n$ . Queremos encontrar el rango de $v$ para que $|n - b^v|< 1/2$ y cuántos decimales $v$ puede variar de $t$
Así que dejemos $b^{v_1} = n - \frac 12$ así que $v_1 = \log_b (n-\frac 12)$ . Así que $t - v = \log_b n - \log_b (n - \frac 12) = \log_b {n}{n- \frac 12}$ . ¿Cuántos ceros a la izquierda tiene esto? Tiene $\lfloor -\log_{10} (\log_b \frac{n}{n- \frac 12})\rfloor$ decimales.
Asimismo, $b^{v_2} = n + \frac 12$ así que $v_2$ está dentro de $\lfloor-\log_{10}(\log_b \frac{n+\frac 12}n)\rfloor$ decimales.
Así que para encontrar $round[b^v] = n$ tenemos que resolver $v = \log_b n$ en $\min (\lfloor -\log_{10} (\log_b \frac{n}{n- \frac 12})\rfloor,\lfloor-\log_{10}(\log_b \frac{n+\frac 12}n)\rfloor) = \lfloor -\log_{10} (\log_b \frac{n}{n- \frac 12})\rfloor$ decimales.
.....
Supongo que debería probarlo.
Si $8^t = 5,673$ entonces $t = \log_8 5673 = \ln 5673/\ln 8 = 4.1566320495569725555773549220362$ . Si calculamos que dentro de $[-\log_{10} \log_8 {\frac {5673}{5672.5}}]=[-\log \log_8 \frac {11346}{11345}] = [-\log 4.2386703739308141293762517391067e-5] = [4.3727703556302006379851110164063] = 4$ .
Así que $8^{4.1566} = 5672.6219344912076083978179288225$ . Sí, eso es dentro de un margen de error de 1/2. Parece que funciona.