Given $p \in \mathbb{Z}$ a prime number and $M=\mathbb{Z}\left[\dfrac{1}{p}\right]$ a module over the ring $\mathbb{Z}$. How could I determine all submodules of M?
I thougt it would work to consider the generating set $\left\lbrace 1, \dfrac{1}{p}, \dfrac{1}{p^2},\ldots \right\rbrace$ and then each submodule would be generated by a modified subset (for example multiplicating each member of the subset with an integer) of it. But I am not sure about this.
As a submodule, $M = \Bbb Z[\frac 1 p]$ is the reunion of the $\frac 1 {p^n} \Bbb Z$, which are all isomorphic to $\Bbb Z$. So it is the direct limit $\Bbb Z \to \Bbb Z \to \Bbb Z \to \ldots$ where each map is multiplication by $p$.
Now, you should already know that the submodules of $\Bbb Z$ are all of the form $m\Bbb Z$ for some $m \ge 0$.
If $N$ is a submodule of $M$, then $N_n = N \cap \frac 1 {p^n} \Bbb Z$ is a submodule of $\frac 1 {p^n} \Bbb Z$, so it is of the form $\frac {m_n}{p^n} \Bbb Z$ for some $m_n \ge 0$.
Now let's look at what possible values there can for $m_{n+1}$ if we know $m_n$ (to make things simple we can put $n=0$). $m_1\Bbb Z$ has to be a subgroup of $\Bbb Z$ such that $m_1\Bbb Z \cap p \Bbb Z = pm_0 \Bbb Z$.
If $m_1$ is a multiple of $p$ then $m_1\Bbb Z \cap p\Bbb Z = m_1\Bbb Z$ so we must have $m_1 = pm_0$, and in this case, we have $N_1 = N_0$.
If $m_1$ is not a multiple of $p$, then because $p$ is prime, $m_1\Bbb Z \cap p\Bbb Z = m_1p\Bbb Z$ so we must have $m_0 = m_1$, and in this case we have $N_1 = \frac 1p N_0$.
Hence, if $m_0$ is a multiple of $p$ we must have $m_1 = pm_0$ and $N_1 = N_0$. If $m_0$ is not a multiple of $p$ we can have either $m_1 = m_0$ and $N_1 = \frac 1 p N_0$ or $m_1 = pm_0$ and $N_1 = N_0$.
Putting all of those results together, if the sequence $(m_n)$ contains a multiple of $p$ then the sequence $(N_n)$ is stationary and so $N = x \Bbb Z$ for some $x \in M$.
If not then the sequence $(m_n)$ is constant so $N = m M$ for some integer $m > 0$ prime with $p$