Comprobador pandigital
Compruebe si un número usa cada cifra de su base una sola vez: 1023456789 es pandigital en base 10, pero un número con solo las cifras del 1 al 9 no, porque le falta el 0. Bases de 2 a 36. Gratis en su navegador.
- Gratis
- Funciona en su navegador
- Sin registro
- Sus datos no salen de su equipo
Ejecutar — gratis
Ejemplo resuelto
- N
- 1 023 456 789
- Base numérica
- 10
- Cantidad de dígitos
- 10
Un número pandigital en una base dada emplea cada dígito de esa base exactamente una vez: sin huecos ni duplicados. En base diez eso significa que los diez símbolos del cero al nueve aparecen una vez cada uno; en base dos, los bits cero y uno; en base dieciséis, cada valor del cero al quince debe aparecer exactamente una vez en la expansión posicional. Esta capacidad convierte un entero no negativo a dígitos en bases del dos al treinta y seis, falla de forma estricta si algún dígito se repite y, en caso contrario, devuelve la lista ordenada de dígitos, qué símbolos están presentes, cuáles faltan y un booleano claro de forma pandigital completa. Estudiantes, autores de concursos y aficionados a los acertijos obtienen una auditoría determinista sin software de álgebra computacional ni bibliotecas opacas.
Qué significa pandigital en una base elegida
Escriba un entero no negativo n en base b y observe el multiconjunto de sus dígitos. El conjunto completo de símbolos de esa base es cero, uno, dos, hasta b menos uno. El número es plenamente pandigital cuando ese multiconjunto coincide con el conjunto completo exactamente una vez cada uno: aparece todo dígito requerido, ninguno falta y ninguno se repite.
Ejemplos clásicos en base diez incluyen mil veintitrés millones cuatrocientos cincuenta y seis mil setecientos ochenta y nueve, cuya escritura decimal es uno-cero-dos-tres-cuatro-cinco-seis-siete-ocho-nueve y por tanto contiene cada dígito decimal una vez. En base dos el entero dos se escribe como uno-cero y es pandigital; el tres se escribe como uno-uno y se rechaza porque el dígito uno se repite. La definición es fija y determinista: no hay muestreo, azar, aritmética flotante aproximada ni formato numeral dependiente del idioma.
Los ceros a la izquierda nunca aparecen en la expansión posicional de un entero positivo, de modo que el cero debe ocupar un lugar no inicial cuando se exige el conjunto completo que lo incluye: por eso muchos pandigitales famosos de diez dígitos empiezan con un dígito no nulo y colocan el cero en alguna posición posterior.
Qué puede hacer con ella
Validadores de concursos y de Project Euler
Afirme soluciones candidatas a problemas clásicos pandigitales sin reimplementar la conversión de base y la detección de duplicados en cada arnés de lenguaje.
Demostraciones didácticas de conjuntos de dígitos posicionales
Proyecte los arreglos present y missing en clase para que los alumnos vean qué símbolos de la base aparecen, cuáles faltan y por qué las repeticiones incumplen el contrato.
Preguntas frecuentes
¿Qué es un número pandigital?
En base b, un entero no negativo cuyos dígitos usan cada símbolo 0 hasta b−1 exactamente una vez. En base 10 eso significa que todo dígito 0–9 aparece una vez.
¿Esta herramienta exige el cero en base 10?
Sí. La forma pandigital completa aquí necesita el conjunto 0..base−1.
¿Qué bases se admiten?
Enteros del 2 al 36. La base por defecto es 10.
¿Es gratuito el comprobador de números pandigitales?
La herramienta del navegador es gratuita y se ejecuta en local.
¿Por qué un número con solo las cifras del 1 al 9 no es pandigital?
En base 10 deben aparecer una vez todas las cifras del 0 al 9, y ese número no tiene el 0. El resultado señala el 0 como cifra que falta, así que el número no es pandigital completo.
Herramientas relacionadas
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.
Llámela desde su stack
curl -X POST https://api.kit.forhosting.com/numth/pandigital-checker \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"n":1023456789}'const res = await fetch("https://api.kit.forhosting.com/numth/pandigital-checker", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"n": 1023456789
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/numth/pandigital-checker",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"n": 1023456789
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/numth/pandigital-checker", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"n":1023456789}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"n":1023456789}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/numth/pandigital-checker", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Ejemplo de solicitud
{
"n": 1023456789
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "numth.pandigital_checker",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Límites
max_n | 999999999999999 |
min_base | 2 |
max_base | 36 |
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |
Notas técnicas
Qué significa pandigital en una base elegida
Una cadena de nueve dígitos como uno dos tres cuatro cinco seis siete ocho nueve resulta interesante en muchos acertijos, pero aquí no es pandigital completa en base diez porque falta el cero: la respuesta lista missing como un arreglo de un elemento con cero y fija is_pandigital en false. El endpoint nunca inventa una lista parcial de dígitos; cada contribución es un resto entero bajo división sucesiva por la base.
Cómo invocar la API y qué se obtiene
Úselo en pipelines de tareas, validadores de concursos de programación, comprobadores al estilo Project Euler, entornos de preparación de entrevistas o cualquier flujo que necesite un veredicto pandigital reproducible sin instalar paquetes especializados de teoría de números en cada máquina. Envíe un cuerpo JSON con el campo obligatorio n —un número entero al menos cero y como máximo novecientos noventa y nueve billones novecientos noventa y nueve mil novecientos noventa y nueve millones novecientos noventa y nueve mil novecientos noventa y nueve, de modo que todo valor quepa en enteros seguros de JavaScript— y base opcional, un entero del dos al treinta y seis con valor por defecto diez. Se aceptan los alias number y value para n; radix se acepta para base. Si tiene éxito, la respuesta incluye n y base tal como se aceptaron, digits como arreglo ordenado de la posición más a la menos significativa, digit_count, present como los dígitos únicos ordenados hallados, missing como la lista ordenada de símbolos del cero a base menos uno que nunca aparecen, e is_pandigital como booleano verdadero solo cuando missing está vacío y el conteo de dígitos es igual a la base. Si algún dígito se repite, la tarea falla con invalid_input en lugar de devolver un false blando: el contrato es informar dígitos ausentes solo para entradas que ya usan cada dígito presente a lo sumo una vez. La validación fallida —falta n, no entero, fracción, negativo, base fuera del dos al treinta y seis, o dígito repetido— devuelve invalid_input y nunca se cobra. El precio es un $0.002 fijo por petición exitosa con unidad item y precio marginal nulo.
Consejos prácticos, límites y búsquedas relacionadas
Si necesita candidatos de multiprecisión con decenas de dígitos, use una pila dedicada de enteros grandes: esta capacidad ligera de parse está pensada para comprobaciones interactivas y entradas de tamaño didáctico. Al enseñar, muestre ambos resultados: un pandigital completo en base diez como uno cero dos tres cuatro cinco seis siete ocho nueve, un casi acierto que omite el cero, un éxito pequeño en base dos y un rechazo por dígito repetido para que los alumnos vean la ruta de error estricto. Otras páginas de teoría de números de este kit cubren intenciones distintas como comprobaciones de Armstrong o narcisistas, sumas alícuotas o exponentación modular; esta página es específicamente para quienes buscan si un entero dado es pandigital o qué dígitos de la base faltan. No trate el booleano solo como una caja negra: combínelo con missing y digits al calificar entregas para diagnosticar con facilidad el crédito parcial o supuestos erróneos de base. Mantenga n dentro del rango de enteros seguros publicado para que la conversión de base sea exacta en el Worker y en el navegador. Como present y missing son arreglos explícitos, los estudiantes pueden recompute a mano el multiconjunto de dígitos y contrastarlo línea a línea con la API. Recuerde que los acertijos «pandigital del 1 al 9» omiten el cero por diseño; esta herramienta exige el conjunto completo del cero a base menos uno para is_pandigital true, y reportará cero en missing cuando ese sea el único hueco. Las tareas fallidas que devuelven invalid_input no consumen saldo prepago, lo que mantiene baratos los scripts exploratorios cuando el usuario introduce valores incorrectos al aprender el contrato. Las bases mayores que diez usan valores numéricos de dígito once, doce, etc., en lugar de glifos de letras en la salida JSON, lo que mantiene la respuesta legible por máquina en todo idioma cliente.
Casos de integración
Tareas: verificar respuestas pandigitales y dígitos ausentes
Asigne a los alumnos un entero y una base; contraste su lista de dígitos manuscrita, el conjunto de símbolos ausentes y la etiqueta sí/no con el resultado determinista de la API o del navegador gratuito.
Preguntas técnicas
¿Qué ocurre si el número tiene dígitos repetidos?
La tarea falla con invalid_input. Las repeticiones no se tratan como is_pandigital false blando; el contrato rechaza multiconjuntos de dígitos no únicos.