What is the best way to calculate log without a calculator? As the title states, I need to be able to calculate logs (base $10$) on paper without a calculator.
For example, how would I calculate $\log(25)$?

In case anybody wondered why the algorithm given by Ezui actually works, here is a little algebra to explain why:

The algorithm states, that to find the base $10$ logarithm of $x$ one should repeatedly carry out the following three steps:
  
  
*
  
*$d=\max(n\mid 10^n\leq x)$, store $d$ as the next digit
  
*$y=x/10^d$
  
*$x=y^{10}$
  

To prove the correctness, it suffices to prove that each "round" is correct. For simplicity, let $\log$ denote the base $10$ logarithm. First note that $d=\lfloor\log(x)\rfloor\in[0,\infty)\cap\mathbb Z$ is the integer part of $\log(x)$ and then
$$
\begin{align}
\log(y)&=\log(x/10^d)\\
&=\log(x)-d\in[0,1)
\end{align}
$$
where $\log(y)$ must be the fractional part of $\log(x)$. Thus we have $\log(x)=d+\log(y)$. Now, $\log(y^{10})=10\log(y)\in[0,10)$, so if determine $\log(y^{10})$ this result may be used to compute $\log(x)=d+\log(y^{10})/10$. The first digit of $\log(y^{10})$ is found in step 1. in the next "round" of the algorithm where $x=y^{10}$. So the algorithm is correct and produces a new digit of $\log(x)$ in each step.

For calculating $\log_b(x)$, the algorithm should be:


*

*$d=\max(n\mid b^n\leq x)$, store $d$ as the next digit

*$y=x/b^d$

*$x=y^b$

