Writing every homomorphism $\Upsilon : \pi_{1}(S^1,1) \to \pi_{1}(S^1,1)$ as $\Upsilon = f_\ast.$ I'm proposed the following problem:

Show that every group homomorphism $\Upsilon : \pi_1(S^1,1) \to \pi_1(S^1,1)$ can be written as $\Upsilon = f_\ast$ where $f : S^1 \to S^1$ is a continuous map.

I'm considering $S^1$ as a subset of the complex numbers $\mathbb{C}.$ Every path is defined in the unit interval $I = [0,1].$ We will denote the class of a path $\alpha$ (in $S^1$ based at $1$) as $[\alpha] \in \pi_1(S^1,1).$
What I've tried is the following:
Consider the group isomorphism $\iota : \pi_1(S^1,1) \to \mathbb{Z}$ defined as $\iota([\alpha]) = \operatorname{deg}(\alpha),$ for every path $\alpha$ in $S^1$ based at $1.$ Since the path $\alpha_n(t) := \operatorname{exp}(2\pi int)$ has degree $n,$ we can say that $\iota^{-1}(n) = [\alpha_n].$
We get a group homomorphism $\eta := \iota \circ \Upsilon \circ \iota^{-1} : \mathbb{Z} \to \mathbb{Z}.$ It's well known that every group homomorphism $p$ from $\mathbb{Z}$ to itself verifies $p(n) = n + \dots + n = kn$ for some integer $k := p(1).$ Hence, exists some $k \in \mathbb{Z}$ such that $$\eta(n) = n + \dots + n,$$ i.e. add $n$ to itself $k$ times.
We have
\begin{align*}
\Upsilon([\beta]) &= (\iota^{-1} \circ \eta \circ \iota)([\beta]) \\
&= \iota^{-1}(\eta(\iota[\beta])) \\
&= \iota^{-1}(\eta(\operatorname{deg}(\beta))) \\
&= \iota^{-1}(\operatorname{deg}(\beta) + \dots + \operatorname{deg}(\beta)) \\
&= [\alpha_{\operatorname{deg}(\beta)}]\dots[\alpha_{\operatorname{deg}(\beta)}] := [\alpha_{\operatorname{deg}(\beta)}]^k = [\beta]^k.
\end{align*}
Since the map $\Sigma_k : S^1 \to S^1$ defined by $\Sigma_k(z) = z^k$ induces the homomorphism $(\Sigma_k)_\ast : \pi_1(S^1,1) \to \pi_1(S^1,1)$ given by $(\Sigma_k)_\ast[\alpha] = [\alpha]^k,$ we can conlude that $\Upsilon = (\Sigma_k)_\ast,$ where $k$ is the integer given by $\operatorname{deg}(\Upsilon[\alpha_1]).$
Actually, I'm using whithout mention well-known results about the fundamental group of $S^1$ as:


*

*The map $\iota$ is an isomorphism of groups,

*that $i^{-1}(n) = [\alpha_n]$ is consistent follows from the fact that $\alpha \sim \beta$ if and only if $\operatorname{deg}(\alpha) = \operatorname{deg}(\beta)$ for paths in $S^1$ based at $1.$
I want to verify if my answer is correct, and if it is, I want to know if there are unclear points on the proof or if there are more direct or clever ways to get the solution.
Thanks for everyone!
 A: Your proof is correct, but you can do it easier. The fundamental group of of a based space $(X,x_0)$ is usually introduced as the set of equivalence classes of closed paths beginning and ending at $x_0$ ("closed paths based at $x_0$"). The equivalence relation is homotopy rel. $\{ 0,1 \}$ ("path homotopy").
There is a 1-1-correspondence between closed paths $u : [0,1] \to X$ based at $x_0$ and basepoint-preserving maps $\lambda : (S^1,1) \to (X,x_0)$. In fact, let $p : [0,1] \to S^1$ be the quotient map $p(t) = e^{2\pi i t}$. Then for each basepoint-preserving $\lambda  : (S^1,1) \to (X,x_0)$ the path $\lambda \circ p$ is a closed path at $x_0$. Conversely, for each closed path $u$ based at $x_0$ there exists a unique basepoint-preserving $\lambda  : (S^1,1) \to (X,x_0)$ such that $\lambda \circ p = u$. Similarly you can show that path homotopies of closed paths based at $x_0$ are in 1-1-correspondence with basepoint-preserving homotopies of  basepoint-preserving maps $(S^1,1) \to (X,x_0)$. Therefore we can naturally identify $\pi_1(X,x_0)$ with the set of basepoint-preserving homotopy classes of basepoint-preserving maps $(S^1,1) \to (X,x_0)$. If $f : (X,x_0) \to (Y,y_0)$ is basepoint-preserving map, then clearly the induced $f_*$ on fundamental groups is given by $f_*([\lambda]) = [f \circ \lambda]$.
Now let $\Upsilon : \pi_1(S^1,1) \to \pi_1(S^1,1)$ be a homomorphisms. We know that $\pi_1(S^1,1)$ is infinite cyclic generated by the equivalence class $1 = [id]$ of the identity map on $S^1$. Take any $f : (S^1,1) \to (S^1,1)$ representing $\Upsilon(1)$. Then
$$f_*(1) = f_*([id]) = [f \circ id] = [f] = \Upsilon(1) .$$
This suffices to prove the claim because the homomorphisms $f_*, \Upsilon$ agree on the generator.
