Given the base 2 representation of $x\in\mathbb Q$ ($1<x<2$ and has a finite number of digits in base 2), find a number $k\in\mathbb N$ such that $2<x^{2^k}<4$.
The final answer/algorithm is not allowed to use powers, roots and logarithms.
I managed to find a range of possible values for $k$.
Looking at the digits after he decimal point, if the $n$th digit is the first non-zero digit, then squaring this number will necessarily turn at least one of the two preceding digits into a 1 but none of the digits before it. I figured this out by looking at the edge cases: if all the digits after the $n$th digit are zero then the $n-1$ digit becomes 1 when the number is squared, and if all these digits are 1 it is equivalent to a number where only the $n-1$ digit of the fractional part is 1, and squaring this number makes the $n-2$ digit be 1.
So the algorithm for finding the upper and lower limits of $k$ is:
Looking at the digits after the decimal point, count the leading zeros (let's call the result of the count $z$). Then $\lfloor\frac{z+2}{2}\rfloor ≤ k ≤ z+1$.

Better proof of the same conclusion as my previous answer, this time without using approximation.
Again, there is no known solution for all numbers, but I found a quick solution for a significant amount of cases, which is useful for optimizing computer programs (for example: try this answer's method, if it fails do something else, like squaring repeatedly until you can determine the solution using this answer's method).
$$C_{z,n} \stackrel{\text{def}}{=} \frac{2^n-1}{2^{n+z}}+1 = 1.\underbrace{0000000000}_{z\text{ zeros}}\underbrace{111111111}_{n\text{ ones}}\text{ (base 2)}$$
These numbers are useful edge cases because if we know that $k$ (the amount of squarings needed to exceed 2) is the same for $C_{z,n}$ and $C_{z,n+1}$ then it is also the same for all the numbers in between, and that lets us know the answer for all these numbers by counting the first consecutive zeros and ones.
For every number of the form $C_{z,n}$ we know that $k$ is either $z$ or $z+1$. Solving the inequality $C_{z,n} > \sqrt[2^z]{2}$ will tell us the if squaring $z$ times is enough or not. Scaling the inequality around the value 1 (subtract 1, multiply by the scale factor, then add 1) by a factor of $2^z$ results in $C_{0,n} > 2^z (\sqrt[2^z]{2}-1)+1$.
$k=\begin{cases} z + 1 & C_{0,n} < 2^z (\sqrt[2^z]{2}-1)+1\\ z & C_{0,n} > 2^z (\sqrt[2^z]{2}-1)+1 \end{cases}$
The following chart shows the solution to the inequality for $n=1,2,3$:
This gives us the following solution:
(Same as in my previous answer, just written differently.)
$$k = \begin{cases} z+1=1 & & z = 0\\ z+1 & n = 1\\ z+1 & n = 2 & z ≤ 2\\ z & n = 2 & z > 2\\ z & n > 2 & z > 0 \end{cases}$$
Now that we know the value of $k$ for all the edge cases, we can fill in (most of) the gaps. If $k$ is the same for $C_{z,n}$ and $C_{z,n+1}$ then it is also the same for all the numbers in between:
$$C(z,n) \stackrel{\text{def}}{=} \{x|C_{z,n} ≤ x < C_{z,n+1}\}$$
Every number in $C(z,n)$ starts with the digits of $C_{z,n}$ followed by a zero followed by anything.
The following table shows the solutions for all the gaps we can fill: