Como arredondar um número de ponto flutuante para um número específico de casas decimais em Rust?
Olá a todos! Sou novo em Rust e encontrei um problema ao trabalhar com números de ponto flutuante. Preciso arredondar um valor f64 para um número específico de casas decimais, por exemplo, 2 casas para exibir um preço em dólares.\n\nEm Python, estou acostumado a usar `round(3.14159, 2)` e obter 3.14. Em JavaScript, existe `toFixed(2)`. Mas em Rust, não encontrei nada semelhante na biblioteca padrão. Tentei escrever o seguinte código:\n\n```rust\nfn main() {\n let price = 19.995;\n let rounded_price = price.round(); // Isso arredonda para o inteiro\n println!("{}", rounded_price); // Exibe 20\n}\n```\n\nMas `round()` arredonda apenas para o número inteiro. Preciso arredondar para duas casas: `19.995 → 20.00` ou `3.14159 → 3.14`. Tentei multiplicar por 100, arredondar e dividir de volta, mas obtive resultados estranhos devido a imprecisões de ponto flutuante:\n\n```rust\nfn main() {\n let price = 19.995;\n let rounded = (price * 100.0).round() / 100.0;\n println!("{:.2}", rounded); // Ex