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.