Show that $x$ has larger order than $a$

This is exercise $2.35$ from Rotman's A First Course in Abstract Algebra.

Let $G$ be a group and let a $a \in G$ have order $pk$ for some prime $p$, where $k \geq 1$. Prove that if there is $x \in G$ with $x^p = a$, then the order of $x$ is $p^2k$, and hence $x$ has larger order than $a$.

This isn't homework, but I'm stuck. Is there a nice way to prove it?

-

Let $o(x)$ the order of $x$. As $x^{p^2k}=(x^p)^{pk}=a^{pk}=e$, $o(x)\mid p^2k$. Since $x^{o(x)}=e$, we have $a^{o(x)}=x^{p\cdot o(x)}=e$, hence $o(a)\mid o(x)$ and $o(x)=lkp$ for some integer $l$. So $lkp\mid p^2k$ and $l\mid p$. As $p$ is prime, $l=1$ or $l=p$. If $l=p$ we are done, otherwise $o(x)=kp$ and $x^{pk}=e=a^k$, so $p=1$.

-

This the special case $n = 1$ of the following fact:

Let $p$ be a prime, and suppose $a \in G$ has order divisible by $p$ and $x^{p^n} = a$. Then $x$ has order $p^n \cdot o(a)$.

To prove this, you can use the order formula $$o(x^{p^n}) = \frac{o(x)}{\gcd(o(x), p^n)}$$

Thus $o(x) = \gcd(o(x), p^n) \cdot o(a)$. Let $p^k$ be the largest power of $p$ dividing $o(x)$. If $k < n$, then $o(x) = p^k \cdot o(a)$. Because $p$ divides $o(a)$, this implies that $p^{k+1}$ divides $o(x)$, a contradiction. Hence $k \geq n$, which proves that $o(x) = p^n \cdot o(a)$.

-