Enumerar el conjunto $D = \{d_1, d_2, d_3, \ldots\}$ y definir $$ f(x) = \left\{ \begin{array}{cl} 1/i & \text{if } x = d_i \in D \\ 0 & \text{otherwise} \end{array} \right. $$
Claramente, $f$ es discontinua en los puntos de $D$ . Ahora considere $x \not \in D$ y arreglar $\epsilon > 0$ . Sólo hay un número finito de puntos $d_i$ tal que $\frac{1}{i} \ge \epsilon$ por lo tanto, podemos encontrar $\delta > 0$ tal que ninguno de los puntos finitos se encuentra en $(x - \delta, x + \delta)$ . Esto implica $|f(y) - f(x)| < \epsilon$ siempre que $|x - y| < \delta$ .
Para elegir $\delta$ , dejemos que \begin{align*} D_1 = \left\{ d_i \; \Big| \; \frac{1}{i} \ge \epsilon, d_i < x \right\} D_2 = \left\{ d_i \; \Big| \; \frac{1}{i} \ge \epsilon, d_i > x \right\} \end{align*} Entonces $D_1$ y $D_2$ son finitos, lo que significa que que tienen elementos mínimos y máximos. Tenemos $\max D_1 < x$ y $\min D_2 > x$ . Sea $\delta = \min(x - \max D_1, \min D_2 - x)$ .
Demostrar que $(x - \delta, x + \delta)$ es totalmente disjunta de los conjuntos $D_1$ y $D_2$ . Concluir que para todo $d_i \in (x - \delta, x + \delta)$ , $\frac{1}{i} < \epsilon$ es decir, $f(d_i) < \epsilon$ . Por lo tanto, para todos los $y \in (x - \delta, x + \delta)$ , $|f(x) - f(y)| < \epsilon$ .
La respuesta anterior no es muy buena porque olvidé que $f$ tiene que ser monótona.
Una respuesta mejor:
En la misma línea de su solución mencionada en los comentarios, que $D = \{d_1, d_2, d_3, \ldots\}$ y definir $$ f(x) = \sum_{d_i < x} \frac{1}{i^2} $$
Entonces puedes hacer exactamente la misma solución que hiciste en el caso de que $D$ son los números racionales.