Comprobador de número Harshad
El 18 es un número Harshad: sus cifras suman 9 y 18 entre 9 da exactamente 2. Escriba cualquier entero positivo y verá sus cifras, su suma y si esa suma lo divide, útil para problemas de olimpiada y tareas sobre suma de cifras. Gratis en su navegador.
- Gratis
- Funciona en su navegador
- Sin registro
- Sus datos no salen de su equipo
Ejecutar — gratis
Ejemplo resuelto
- N
- 18
- Dígitos
- 1, 8
- Cantidad de dígitos
- 2
- Suma de dígitos
- 9
- Cociente
- 2
Un número Harshad—también llamado número de Niven—es un entero positivo divisible por la suma de sus propios dígitos decimales. El nombre Harshad proviene del sánscrito y se traduce como «dador de alegría»; el de Niven honra al matemático Ivan Niven; ambas etiquetas designan la misma propiedad de divisibilidad. Los estudiantes se encuentran con estos números en problemas de olimpiada y en deberes sobre sumas de dígitos; los profesores necesitan un oráculo determinista que muestre dígitos, suma y cociente; los ingenieros a veces usan la prueba como filtro estructural ligero sobre identificadores seriales. Este comprobador toma un único entero positivo n, expande sus dígitos decimales, los suma, comprueba si esa suma divide a n y devuelve el cociente entero cuando lo hace.
Cómo se calculan la prueba Harshad (Niven) y el cociente
Parta de un entero positivo n escrito en base diez. Extraiga cada dígito de valor posicional tomando repetidamente n módulo diez y dividiendo por diez con división entera; luego invierta los restos recogidos para que aparezcan de más a menos significativo. Sume esos valores de dígito para obtener s, a menudo escrito s(n) o sod(n) en los manuales.
Por definición, n es Harshad—equivalente a Niven—si y solo si s divide a n sin resto, es decir, n mod s es igual a cero. Cuando la prueba pasa, el cociente Harshad es la división entera ordinaria de n entre s; cuando falla, no hay cociente entero bajo esta definición y el campo se devuelve como null para que los clientes puedan ramificar sin inventar un valor fraccionario.
Ejemplos clásicos: dieciocho tiene dígitos uno y ocho, suma nueve, y dieciocho dividido por nueve es dos, así que es Harshad con cociente dos; diecinueve tiene dígitos uno y nueve, suma diez, y diecinueve no es divisible por diez, así que no es Harshad. Uno es Harshad porque el único dígito uno divide a uno con cociente uno. Las potencias de diez como diez y cien tienen suma de dígitos uno y por tanto son siempre Harshad.
Dónde aparecen las comprobaciones Harshad en el trabajo real
Las lecciones de aula sobre reglas de divisibilidad por tres y por nueve ya usan la suma de dígitos decimales; los números Harshad extienden esa intuición al predicado de divisibilidad completo y ofrecen a los estudiantes una familia con nombre para explorar.
Los equipos de producto y operaciones a veces aplican filtros estructurales ligeros a códigos de ticket, identificadores de lote o series generadas cuando un Luhn completo o una suma de control criptográfica sería más pesada de lo necesario; un indicador Harshad determinista más el cociente es una puerta simple que se puede auditar sin conexión. Use la herramienta gratuita del navegador para deberes y comprobaciones rápidas de cordura; luego invoque el contrato idéntico desde scripts cuando necesite verificación masiva.
Si más adelante necesita solo la suma de dígitos sin el predicado Harshad, la enumeración en rango de números Harshad o expansiones en otras bases, trátelos como intenciones de búsqueda separadas en lugar de sobrecargar esta página.
Qué puede hacer con ella
Enseñanza de divisibilidad por suma de dígitos
Muestre a los estudiantes los dígitos ordenados, su suma y el resultado dividir-o-fallar para que la definición de Niven sea concreta, no abstracta.
Comprobaciones ligeras de estructura en series
Aplique un indicador Harshad determinista y el cociente a identificadores de ticket o de lote en canalizaciones que necesiten una puerta aditiva simple.
Preguntas frecuentes
¿Qué es un número Harshad o de Niven?
Un entero positivo divisible por la suma de sus dígitos decimales. Por ejemplo, 18 tiene suma de dígitos 9 y 18÷9=2, así que 18 es Harshad (Niven).
¿Qué significa el campo quotient?
Cuando la suma no divide a n, quotient es null.
¿Solo se admite la base diez?
Sí. Este comprobador usa únicamente dígitos decimales, lo que coincide con la intención de búsqueda habitual de Harshad/Niven. Otras bases quedan fuera de alcance aquí.
¿Cuánto cuesta?
La herramienta del navegador es gratuita y se ejecuta en local.
¿Es el 18 un número Harshad?
Sí. Sus cifras 1 y 8 suman 9, y 18 entre 9 da 2 sin resto. El resultado muestra las cifras, la suma de 9 y el cociente de 2.
¿Por qué el 11 no es un número Harshad?
Porque sus cifras 1 y 1 suman 2, y el 11 es impar, así que no se puede dividir entre 2 sin que quede resto. Cuando la suma no divide al número, no se muestra ningún cociente.
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/harshad-number \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"n":18}'const res = await fetch("https://api.kit.forhosting.com/numth/harshad-number", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"n": 18
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/numth/harshad-number",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"n": 18
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/numth/harshad-number", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"n":18}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"n":18}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/numth/harshad-number", 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": 18
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "numth.harshad_number",
"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
min_n | 1 |
max_n | 9007199254740991 |
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
La herramienta del navegador y la API comparten una sola función pura, de modo que las comprobaciones interactivas y las canalizaciones automatizadas nunca divergen en silencio.
Qué envía usted y qué recibe a cambio
Cero y los enteros negativos fallan porque la definición clásica de Harshad y Niven se aplica solo a enteros positivos; el mensaje de error indica que n debe ser al menos uno para que formularios y scripts puedan corregir la entrada sin adivinar. Como el motor es trabajo de parseo puro, el mismo n produce siempre el mismo objeto, sin deriva de modelo y sin estado almacenado entre llamadas. Proporcione un entero positivo obligatorio bajo el campo n, o los alias number, value o integer. Los valores ausentes, no enteros, menores que uno o mayores que el máximo de entero seguro se rechazan con invalid_input y no se cobran. En caso de éxito, la respuesta incluye el n normalizado, digits como un array de valores de dígitos decimales en orden de más a menos significativo, digit_count como la longitud de ese array, digit_sum como su total, is_harshad como booleano y quotient como el entero n dividido por digit_sum cuando is_harshad es true, o null cuando la suma no divide a n. Comprobaciones de ejemplo: n igual a dieciocho produce dígitos uno y ocho, digit_sum nueve, is_harshad true, quotient dos; n igual a diecinueve produce digit_sum diez, is_harshad false, quotient null; n igual a doce produce dígitos uno y dos, suma tres, cociente cuatro.
Dónde aparecen las comprobaciones Harshad en el trabajo real
Como esta capacidad es un motor de parseo puro, el precio de la API es la base publicada de $0.002 por ítem exitoso y la validación fallida no consume saldo.
Casos de integración
Fixtures de concurso y deberes
Verifique si n es Harshad y capture el cociente exacto para problemas de olimpiada y claves de respuesta en el aula.
Preguntas técnicas
¿Por qué se rechaza n menor que 1?
La definición clásica cubre solo enteros positivos. Cero y negativos devuelven invalid_input con un mensaje de que n debe ser al menos 1.