El dominio indica qué valores de entrada puede recibir una función. En programación, identificarlo permite evitar errores, validar datos y construir algoritmos más confiables.
Una función no siempre puede recibir cualquier valor. Algunas funciones aceptan todos los números reales, pero otras tienen restricciones: no se puede dividir por cero, no se puede calcular una raíz cuadrada real de un número negativo y algunos modelos solo tienen sentido dentro de ciertos límites.
El dominio de una función es el conjunto de valores de entrada para los cuales la función está definida.
El dominio responde a la pregunta: ¿qué valores puede tomar la variable independiente?
Si una función se escribe como f(x), el dominio indica qué valores puede tomar x para que la función tenga sentido.
Algunas funciones aceptan cualquier número real como entrada. Por ejemplo:
Esta función puede evaluarse con valores negativos, positivos, cero o decimales. No hay divisiones problemáticas ni raíces que limiten los valores permitidos.
function lineal(x) {
return 2 * x + 3;
}
console.log(lineal(-4));
console.log(lineal(0));
console.log(lineal(2.5));
Cuando una función tiene una división, el denominador no puede ser cero. Por ejemplo:
En esta función, x no puede valer 0. Por lo tanto, el dominio son todos los números reales excepto cero.
function dividirDiezPor(x) {
if (x === 0) {
return "Entrada fuera del dominio";
}
return 10 / x;
}
console.log(dividirDiezPor(2));
console.log(dividirDiezPor(0));
Si trabajamos con números reales, la raíz cuadrada solo está definida para valores mayores o iguales que cero.
El dominio de esta función es x ≥ 0.
function raizCuadrada(x) {
if (x < 0) {
return "Entrada fuera del dominio";
}
return Math.sqrt(x);
}
console.log(raizCuadrada(9));
console.log(raizCuadrada(-4));
No todas las restricciones aparecen por una operación matemática. A veces el dominio depende del problema real que estamos modelando.
Matemáticamente podríamos reemplazar cantidad por muchos valores, pero en una tienda no tiene sentido comprar una cantidad negativa de productos.
function calcularTotal(cantidad, precioUnitario) {
if (cantidad < 0) {
return "La cantidad no puede ser negativa";
}
return cantidad * precioUnitario;
}
console.log(calcularTotal(3, 1200));
console.log(calcularTotal(-2, 1200));
| Función | Restricción | Dominio |
|---|---|---|
| f(x) = x + 5 | Ninguna | Todos los números reales |
| f(x) = 1 / x | x no puede ser 0 | Todos los reales excepto 0 |
| f(x) = √x | x no puede ser negativo | x ≥ 0 |
| f(x) = √(x - 2) | x - 2 debe ser mayor o igual que 0 | x ≥ 2 |
| f(x) = precio × cantidad | La cantidad no puede ser negativa | cantidad ≥ 0 |
En software, pensar en el dominio ayuda a validar formularios, entradas de usuario, datos recibidos desde una API y valores calculados por otros módulos.
function calcularPorcentaje(parte, total) {
if (total === 0) {
return "No se puede calcular un porcentaje con total cero";
}
if (parte < 0 || total < 0) {
return "Los valores no pueden ser negativos";
}
return parte / total * 100;
}
console.log(calcularPorcentaje(25, 100));
console.log(calcularPorcentaje(25, 0));
El dominio de esta función no está definido solo por una fórmula, sino también por las reglas del problema.
Un dominio puede ser continuo, como todos los números entre 0 y 1, o discreto, como una lista de niveles, categorías o valores enteros.
| Tipo de dominio | Ejemplo | Uso en programación |
|---|---|---|
| Continuo | 0 ≤ x ≤ 1 | Opacidad, progreso, porcentajes y animaciones |
| Discreto | x ∈ {1, 2, 3, 4, 5} | Niveles, estrellas de calificación y opciones |
| Entero no negativo | x ∈ {0, 1, 2, 3, ...} | Cantidades, índices y contadores |
Una buena práctica es verificar que la entrada pertenece al dominio antes de aplicar la fórmula. Esto evita resultados incorrectos o mensajes difíciles de interpretar.
function funcionRacional(x) {
if (x === 2) {
return "Entrada fuera del dominio";
}
return 1 / (x - 2);
}
console.log(funcionRacional(5));
console.log(funcionRacional(2));
Como el denominador es x - 2, la entrada 2 debe excluirse del dominio.
El dominio indica qué valores puede recibir una función. Antes de calcular una salida, conviene preguntarse si la entrada pertenece al conjunto de valores permitidos.
En el próximo tema veremos codominio e imagen, dos conceptos que ayudan a describir los valores de salida posibles y los valores que la función realmente produce.