It seems to me that from $\mathbb{Z}^{n}\cong A\subseteq G \subseteq B\cong \mathbb{Z}^{n}$ it should directly follow that $G\cong \mathbb{Z}^{n}$ using the structure theorem for finitely generated abelian groups ($G$ must be finitely generated because it is a $\mathbb{Z}$-submodule of the finitely generated $\mathbb{Z}$-module $B$, and $\mathbb{Z}$ is a noetherian ring).
But my professor, in two different sources, says (after having those inclusions already) that $G$ is free of rank $n$ because the quotient group $B/A$ is finite. I assume he is arguing with additivity of the rank in short exact sequences ($G$ is free and $G/A\subseteq B/A$ is also finite, hence of rank $0$): $$ 0\to A \to G\to G/A \to 0$$
This seems to me like an unnecessary step, but since he does it in both sources I am worried that I may be missing something. Am I missing anything?
Remark 1: in case it matters, the $\mathbb{Z}$-module in question is $\mathcal{O}_{K}$, where $K$ is a number field of degree $n$ over $\mathbb{Q}$. I thought that maybe he just wants to compute the cardinality of $B/A$ because it is interesting information in itself. But why would he do it inside the proof then?
Remark 2: I also thought that he may be avoiding the structure theorem following the moto "don't use big theorems if you don't need them". So instead of using the structure theorem he would be using additivity of the rank. But again, I am afraid that this may not be the reason and that I am missing out on something.