typestar

Floats y casts en Rust

Matemática de punto flotante, y los casts explícitos que Rust exige entre tipos.

fn main() {
    let x = 2.0_f64;
    println!("{:.4}", x.sqrt());
    println!("{:.2}", (7.0 / 3.0));

    let n = 9.87_f64;
    let truncated = n as i32;
    let widened = truncated as f64;
    println!("{truncated} {widened}");

    let close = (0.1 + 0.2_f64 - 0.3).abs() < f64::EPSILON;
    println!("close: {close}");
}

Cómo funciona

  1. Los casts con as truncan hacia cero y nunca hacen panic.
  2. Comparar floats es comparar contra un épsilon.
  3. Métodos de f64 como sqrt y abs viven en el valor.

Palabras clave y builtins usados aquí

El intento, en números

Líneas
13
Caracteres a escribir
288
Tokens
92
Ritmo de tres estrellas
80 tpm

Al ritmo de tres estrellas de 80 tokens por minuto, este intento toma unos 69 segundos.

Escribe este fragmento

Paso 5 de 6 en Variables y tipos; paso 5 de 39 en Fundamentos del lenguaje.

← Anterior Siguiente →