Abrir a classe Float para criar o método para_dinheiro não é uma abordagem não recomendada nesse caso? Principalmente quando a lição principal diz que: "Note que, ao abrir uma classe, estamos nos acoplando fortemente a tudo o que ela contém, conteve e conterá." O certo não seria termos uma classe representado moeda, que cuidaria de toda essa parte, inclusive de como se converter em uma string?