Trabajando con números complejos

Rust:
Trabajando con números complejos

Cómo hacerlo:

Rust no tiene soporte incorporado para números complejos, pero crates como num-complex te respaldan. Así es como lo usas:

use num_complex::Complex;

fn main() {
    let a = Complex::new(2.0, 3.0); // 2 + 3i
    let b = Complex::new(1.0, -4.0); // 1 - 4i

    let suma = a + b;
    let producto = a * b;

    println!("Suma: {}", suma); // Suma: 3 - 1i
    println!("Producto: {}", producto); // Producto: 14 - 5i
}

Necesitarás agregar num_complex a tu Cargo.toml para hacer posible esta magia.

Profundización

Los números complejos fueron concebidos en el siglo XVI pero realmente despegaron en el siglo XVIII cuando matemáticos como Euler comenzaron a jugar con ellos.

Sin operaciones nativas de números complejos, lenguajes como Rust dependen de bibliotecas de terceros. num-complex es uno de estos crates y es parte de la colección de crates num que tiene como objetivo proporcionar tipos y traits numéricos para Rust.

Vale la pena mencionar que algunos lenguajes (como Python) tienen soporte integrado para números complejos, mientras que otros (como C++, con el encabezado <complex>) los proporcionan como parte de la biblioteca estándar. En Rust, la decisión de mantener la biblioteca estándar pequeña significa que a menudo recurrirás a crates creados por la comunidad para funcionalidades adicionales.

Ver también