Moka asked me a problem and wanted me to post the solution on my blog. Here’s the problem for you, Mokashi:

Question: Prove that given any natural number, one can always append some digits in its end to get a power of 2. For example, ${1\mapsto 16, 2 \mapsto 256, 3 \mapsto 32, 4 \mapsto 4096}$ etc. (Be wise and generalize.)

Answer: The given problem reduces to the following:

Given an integer ${n}$, prove that there exists ${(r,s)\in \mathbb{N}\times \mathbb{N}}$ such that ${s<10^r}$ and ${n(10)^r+s}$ is a power of 2.

Let ${f:\mathbb N \rightarrow \mathbb N}$ be a function.

Need to show that there exists an integer ${r}$ such that the following inequality holds:

$\displaystyle n(10)^r \leq 2^{f(r)} < n(10)^{r+1}$

$\displaystyle \iff r+\log_{10} n \leq f(r) \log_{10} 2 < r+1+\log_{10} n$

$\displaystyle \iff \frac{r+\log_{10} n}{\log_{10} 2} \leq f(r) < \frac{r+1+\log_{10} n}{\log_{10} 2}$

Now there exists an integer ${f(r)}$ if the length of the interval

$\displaystyle \left(\frac{r+1+\log_{10} n}{\log_{10}2}\right)- \left(\frac{r+\log_{10} n}{\log_{10} 2}\right) >1$

if and only if

$\displaystyle 1 > \log_{10} 2 \approx 0.301$

Remark: The same proof goes through if 2 is replaced by any prime less than 10.