Приведенные слова имеют корни МОК-МАК с чередующимися гласными.
Правило русского языка советует различать эти корни по смыслу: корень МОК- показывает, что предмет пропускает жидкость. Корень МАК- показывает, что предмет погрузили в жидкость, окунули в жидкость.
Например.
Человек попал под дождь. Зонт с собой не взял, естественно, совсем промок. Сапоги промокли. И асфальт, и газоны, и все вокруг стало мокрым. Ужасная мокрота.
Есть такая скороговорка: у нас на дворе и подворье погода расмокропогодилась.
Ничего никуда не погружали, а просто все предметы пропустили воду.
А вот берем булочку и погружаем ее в молоко, то есть булочку макнули в молоко, и она после того, как полежала там,
стала мокрой, размокла.
Мальчик подошел к банке с краской и осторожно макнул в нее пальчик. Он не станет мокрым, только окунет руку и вынет из банки. Отец говорит сыну: "Макни-ка еще разок".
Вот так различается правописание чередующихся гласных в корне МОК-МАК.