Avatar ·

¿Cómo obtener el valor absoluto de un número en Rust?

¡Hola, colegas! Acabo de empezar a aprender Rust después de Python, y tengo un problema aparentemente simple. En Python solía usar `abs(-5)` y obtenía 5. Ahora intento hacer lo mismo en Rust, pero el compilador da errores. Aquí está mi código: ```rust fn main() { let x = -5; let y = abs(x); println!("Valor absoluto: {}", y); } ``` El compilador dice: "error[E0425]: cannot find function `abs` in this scope". Probé escribir `x.abs()`, y funcionó para enteros. Pero cuando intenté hacer lo mismo con números de punto flotante: ```rust fn main() { let a: f64 = -3.14; let b = a.abs(); println!("{}", b); } ``` Esto también funciona. Pero ¿qué pasa si quiero escribir una función universal que acepte tanto enteros como flotantes? En Python era trivial, pero en Rust no puedo entender cómo hacerlo. ¿Hay algún trait o método general? ¿O necesito escribir funciones separadas para cada tipo? Agradeceré la ayuda.