Tipos numéricos
int, double, decimal y otros
Tipos numéricos es una lección gratuita de C# Academy en CoddyKit. Esta es la lección 1 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 C# Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de C# Academy incluye 4 lecciones en total.
Por qué importan los tipos numéricos
C# ofrece varios tipos numéricos, cada uno capaz de almacenar un rango de valores diferente y de utilizar una cantidad distinta de memoria.
Elegir el tipo adecuado mantiene sus programas correctos y eficientes. Un número entero, como el recuento de usuarios, cabe en un int; un precio necesita decimales.
En esta lección conocerá los tipos enteros, de coma flotante y decimal.
Tipos enteros
Los enteros almacenan números completos sin parte fraccionaria.
int— 32 bits, el valor predeterminado habituallong— 64 bits, para recuentos muy grandesshortybyte— rangos más pequeños
Utilice int a menos que un valor pueda superar aproximadamente los dos mil millones.
int age = 30;
long population = 8000000000;
Console.WriteLine(age);
Console.WriteLine(population);Rangos de los enteros
Cada tipo entero tiene valores mínimo y máximo fijos. Puede consultarlos mediante int.MaxValue y constantes similares.
Superar el máximo provoca un desbordamiento, en el que el valor vuelve al principio silenciosamente.
Console.WriteLine(int.MinValue);
Console.WriteLine(int.MaxValue);
Console.WriteLine(long.MaxValue);Coma flotante: double
double es un tipo de coma flotante de 64 bits para números reales con decimales.
Es el tipo predeterminado para los literales fraccionarios, por lo que 3.14 es un double. Es rápido y excelente para ciencia y gráficos, pero almacena los valores de forma aproximada.
double pi = 3.14159;
double half = 1.0 / 2.0;
Console.WriteLine(pi);
Console.WriteLine(half);Coma flotante: float
float es un tipo de coma flotante de 32 bits. Utiliza la mitad de memoria que double, pero admite menos cifras.
Un literal float necesita el sufijo f, como 2.5f; de lo contrario, C# trata el número como un double.
float temperature = 21.5f;
float ratio = 0.1f;
Console.WriteLine(temperature);
Console.WriteLine(ratio);Dinero exacto: decimal
decimal es un tipo de 128 bits diseñado para dinero y valores decimales exactos. Evita los pequeños errores de redondeo de double.
Un literal decimal utiliza el sufijo m, como 9.99m. Utilícelo para precios, operaciones bancarias y contabilidad.
decimal price = 9.99m;
decimal tax = 0.08m;
Console.WriteLine(price + price * tax);double frente a decimal
Observe cómo double puede producir un resultado sorprendente, mientras que decimal se mantiene exacto.
Por eso el código financiero prefiere decimal, aunque es más lento que double.
double d = 0.1 + 0.2;
decimal m = 0.1m + 0.2m;
Console.WriteLine(d);
Console.WriteLine(m);Inferencia de tipos con var
La palabra clave var permite que el compilador infiera el tipo a partir del valor situado a la derecha.
La variable sigue teniendo un tipo fijo: var count = 5; crea un int. Los sufijos determinan el tipo de los literales fraccionarios.
var count = 5;
var pi = 3.14;
var price = 9.99m;
Console.WriteLine(count.GetType());
Console.WriteLine(price.GetType());Separadores de dígitos
Para mejorar la legibilidad, puede colocar guiones bajos entre los dígitos de cualquier literal numérico. El compilador ignora los guiones bajos.
Esto facilita mucho la lectura de números grandes de un vistazo.
int million = 1_000_000;
long distance = 9_460_730_472_580_800;
Console.WriteLine(million);
Console.WriteLine(distance);Valores especiales de double
double puede representar valores especiales: infinito positivo y negativo, y NaN (no es un número).
Dividir por cero con valores double produce infinito en lugar de un error, mientras que la división entera por cero lanza una excepción.
double inf = 1.0 / 0.0;
double nan = 0.0 / 0.0;
Console.WriteLine(inf);
Console.WriteLine(nan);Elegir el tipo adecuado
Una guía rápida:
- Números enteros →
int(olongsi son enormes) - Valores científicos o decimales generales →
double - Dinero y valores exactos →
decimal
Elegir bien evita errores de desbordamiento y de redondeo.
Comprobación rápida
Compruebe su comprensión de los tipos numéricos.
Repaso
Ha aprendido los tipos numéricos principales de C#: int y long para números enteros, double y float para coma flotante, y decimal para valores monetarios exactos.
Recuerde los sufijos de los literales: f para float, m para decimal y guiones bajos para mejorar la legibilidad. Elija los tipos equilibrando rango, precisión y memoria.
Preguntas frecuentes
¿La lección «Tipos numéricos» es gratis?
Sí — el texto completo de «Tipos numéricos» 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 C# Academy, actualiza a CoddyKit PRO. El curso de C# Academy incluye 4 lecciones en total.
¿Qué aprenderé en «Tipos numéricos»?
int, double, decimal y otros Practicas C# 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 C# Academy?
No se requiere experiencia previa. C# 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 1 de 4.
¿Cuánto tiempo toma la lección «Tipos numéricos»?
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 C# Academy?
Sí. Cada lección de C# 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
- Tipos numéricos
- Aritmética y precedencia
- La clase Math
- Convertir entre números