Функция Дирихле - это еще цветочки: ее график укладывается на две прямые. А вот слабо построить функцию, график которой плотен на всей плоскости (в любом кружочке на плоскости - есть точки графика)?
А вот не слабо. Пусть

- перенумерованные рациональные числа. Построим функцию Дирихле

. После этого из точек, для которых

, выделим всюду плотное счётное множество и присвоим

для точек этого множества. Потом из тех точек, где

всё ещё равен

выберем опять всюду плотное счётное множество и присвоим

, и так далее.
Всюду плотное множество из остающихся точек можно выбрать всегда, приближаясь поочерёдно ко всем рациональным (выбрав для каждого рационального числа счётное множество приближений и объединив все эти множества (а их счётное количество)).
Ответа заранее не знал. Большое спасибо, очень интересное наблюдение.
Правда, уж эта конструкция в формулу точно никак не впишется.
-- 15.03.2016, 14:25 --Можно придумать даже монотонные функции с разрывами во всех рациональных точках. Строить можно по типу множества Кантора. Могу ошибаться, но, вроде, нет.
А вот, кстати, если захотеть чтобы

была монотонной да ещё чтобы было

для любого

(я когда-то так хотел, например), то ничего не получится, потому что это будет практически разбиение континуума на континуальное количество непрерывных непустых отрезков. А это невозможно потому что в каждом непустом отрезке есть рациональная точка, а их множество счётно.