I have been trying to do this exercise and found two answers:
Showing that a finite abelian group has a subgroup of order m for each divisor m of n
I think I found a clearer way of doing that, and I would like to share it and have it "peer-reviewed".
Lemma: Let $G$ be a finite abelian group of order $m$. Then $\forall g\in G$, $g^m=1$.
Let $G$ be a finite abelian group of order $m$, such that $n\mid m$. Let $g\in G$ be an element of $G$ with (finite) order $O(g)=r$.
Since $g\in G$, then $\langle g\rangle\le G$. By Lagrange's Theorem, then $r\mid m$; then let $m=kr$ for a certain $k$. Thus:
$$g^m=g^{kr}=(g^r)^k=(g^k)^r=1^r=1$$
Proposition: Let $G$ be a finite abelian group of order $m$. If $n\mid m$, then $G$ has a subgroup of order $n$.
If $n\mid m$, let $m=kn$ for a certain $k$. Then for every $g\in G$ (with $g \ne e$, $e$ the identity element of $G$):
$$g^m=g^{kn}=1\implies (g^k)^n=1$$
Thus with $h=g^k$, we have $h^n=1$; so the subgroup generated by $h=g^k$ has order $n$.
What do people think about this proof? Does it contain any flaws or holes?
Best Answer
All you've shown is that the subgroup generated by $h$ has an order that divides $n$, not that it is $n$. For instance, if you had (by mistake) picked the identity element $e$ as $g$ in your proposition, you've have correctly shown that $e^n = e$, but that doesn't mean that $e$ has order $n$; in fact, it has order $1$.