0Pricing
Swift Academy · Lección

Punto flotante: Double frente a Float

Elija entre Double y Float y gestione la precisión.

Punto flotante: Double frente a Float es una lección gratuita de Swift Academy en CoddyKit. Esta es la lección 2 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Swift Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Swift Academy incluye 4 lecciones en total.

Tipos de coma flotante

Swift tiene dos tipos principales de coma flotante: Double (64 bits) y Float (32 bits). Representan números con partes fraccionarias.

let d: Double = 3.14159
let f: Float = 3.14159
print(d, f)

Double es el tipo predeterminado

Cuando escribe un literal decimal sin una anotación de tipo, Swift infiere Double. Double ofrece más precisión que Float.

let value = 2.5
print(type(of: value))

Diferencia de precisión

Double almacena aproximadamente 15 dígitos decimales significativos; Float, solo unos 6 o 7. El mismo literal puede mostrarse de forma diferente.

let d: Double = 0.1234567890123456
let f: Float = 0.1234567890123456
print(d)
print(f)

La constante pi

Ambos tipos proporcionan .pi. Double.pi es más preciso que Float.pi.

print(Double.pi)
print(Float.pi)

Aritmética de coma flotante

Puede sumar, restar, multiplicar y dividir números de coma flotante. La división conserva el resultado fraccionario.

let radius = 2.0
let area = Double.pi * radius * radius
print("Area:", area)

Métodos de redondeo

Los valores de coma flotante ofrecen .rounded(), además de variantes como .rounded(.down) y .rounded(.up).

let x = 2.7
print(x.rounded())
print(x.rounded(.down))
print(x.rounded(.up))

Suelo, techo y truncamiento

Las reglas de redondeo permiten redondear hacia menos infinito, hacia más infinito o truncar hacia cero.

let n = -2.3
print(n.rounded(.down))
print(n.rounded(.up))
print(n.rounded(.towardZero))

Imprecisión de la coma flotante

Debido a la representación binaria, algunos números decimales no se pueden almacenar exactamente. Es famoso el caso de que 0.1 + 0.2 no sea exactamente 0.3.

let sum = 0.1 + 0.2
print(sum)
print(sum == 0.3)

Comparación segura de números de coma flotante

En lugar de comprobar la igualdad exacta, compare los números de coma flotante dentro de una pequeña tolerancia (épsilon).

let sum = 0.1 + 0.2
let close = abs(sum - 0.3) < 0.0001
print("Close enough:", close)

Valores especiales de coma flotante

Los tipos de coma flotante pueden representar infinity y nan (no es un número). Compruébelos con .isInfinite y .isNaN.

let inf = Double.infinity
let notNum = Double.nan
print(inf.isInfinite)
print(notNum.isNaN)

Elegir entre Double y Float

Prefiera Double para obtener precisión en los cálculos matemáticos generales. Use Float solo cuando la memoria o un hardware específico, como el de gráficos, requiera un valor de 32 bits.

let preciseAvg: Double = (10.0 + 3.0) / 4.0
print(preciseAvg)

Comprobación rápida

Recuerde qué tipo infiere Swift para los literales decimales.

Resumen: Double frente a Float

Ha aprendido que Double (64 bits, el tipo predeterminado) es más preciso que Float (32 bits), que ambos ofrecen .pi y métodos de redondeo, y que las operaciones con números de coma flotante son imprecisas, por lo que debe comparar con una tolerancia en lugar de usar ==.

let a = 0.1 + 0.2
print("Raw:", a)
print("Rounded:", a.rounded())
print("Within tolerance of 0.3:", abs(a - 0.3) < 1e-9)

Preguntas frecuentes

¿La lección «Punto flotante: Double frente a Float» es gratis?

Sí — el texto completo de «Punto flotante: Double frente a Float» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Swift Academy, actualiza a CoddyKit PRO. El curso de Swift Academy incluye 4 lecciones en total.

¿Qué aprenderé en «Punto flotante: Double frente a Float»?

Elija entre Double y Float y gestione la precisión. Practicas Swift Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar Swift Academy?

No se requiere experiencia previa. Swift Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 2 de 4.

¿Cuánto tiempo toma la lección «Punto flotante: Double frente a Float»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de Swift Academy?

Sí. Cada lección de Swift Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Tipos enteros y sus rangos
  2. Punto flotante: Double frente a Float
  3. Conversiones numéricas explícitas
  4. Literales numéricos y guiones bajos
← Volver a Swift Academy