Verificatore di numero Harshad
Il 18 è un numero Harshad: le sue cifre sommano 9 e 18 diviso 9 dà esattamente 2. Inserisca un intero positivo per vedere le cifre, la loro somma e se quella somma lo divide, utile per gli esercizi di aritmetica. Gratis nel suo browser.
- Gratis
- Funziona nel suo browser
- Senza registrazione
- I suoi dati restano sul dispositivo
Esegui gratis nel browser
Esempio risolto
- N
- 18
- Cifre
- 1, 8
- Numero di cifre
- 2
- Somma delle cifre
- 9
- Quoziente
- 2
Un numero Harshad—detto anche numero di Niven—è un intero positivo divisibile per la somma delle proprie cifre decimali. Il nome Harshad deriva dal sanscrito e significa «donatore di gioia»; il nome Niven onora il matematico Ivan Niven; entrambe le etichette indicano la stessa proprietà di divisibilità. Gli studenti incontrano questi numeri nei problemi di olimpiade e nei compiti sulla somma delle cifre; i docenti hanno bisogno di un oracolo deterministico che mostri cifre, somma e quoziente; gli ingegneri usano a volte il test come filtro strutturale leggero su identificatori seriali. Questo verificatore prende un unico intero positivo n, espande le sue cifre decimali, le somma, verifica se quella somma divide n e restituisce il quoziente intero quando lo fa.
Come si calcolano il test Harshad (Niven) e il quoziente
Si parta da un intero positivo n scritto in base dieci. Si estragga ogni cifra di valore posizionale prendendo ripetutamente n modulo dieci e dividendo per dieci con divisione intera, quindi si invertano i resti raccolti affinché appaiano dal più significativo al meno significativo. Si sommino quei valori di cifra per ottenere s, spesso scritto s(n) o sod(n) nei manuali.
Per definizione n è Harshad—equivalentemente Niven—se e solo se s divide n senza resto, cioè n mod s è uguale a zero. Quando il test ha successo, il quoziente Harshad è la divisione intera ordinaria di n per s; quando fallisce, non esiste quoziente intero secondo questa definizione e il campo viene restituito come null affinché i client possano ramificare senza inventare un valore frazionario.
Esempi classici: diciotto ha cifre uno e otto, somma nove, e diciotto diviso nove è uguale a due, quindi è Harshad con quoziente due; diciannove ha cifre uno e nove, somma dieci, e diciannove non è divisibile per dieci, quindi non è Harshad. Uno è Harshad perché l'unica cifra uno divide uno con quoziente uno. Le potenze di dieci come dieci e cento hanno somma delle cifre uno e sono quindi sempre Harshad.
Dove i controlli Harshad compaiono nel lavoro reale
Le lezioni in aula sulle regole di divisibilità per tre e per nove usano già la somma delle cifre decimali; i numeri Harshad estendono quell'intuizione al predicato completo di divisibilità e offrono agli studenti una famiglia nominata da esplorare.
I team di prodotto e operations a volte applicano filtri strutturali leggeri a codici ticket, identificatori di lotto o seriali generati quando un Luhn completo o una somma di controllo crittografica sarebbe più pesante del necessario; un flag Harshad deterministico più il quoziente è un cancello semplice che può essere auditato offline. Usi lo strumento gratuito del browser per i compiti e i controlli rapidi di sanità, poi richiami il contratto identico da script quando serve verifica massiva.
Se in seguito le serve solo la somma delle cifre senza il predicato Harshad, l'enumerazione per intervallo di numeri Harshad o espansioni multi-base, tratti tali esigenze come intenti di ricerca separati invece di sovraccaricare questa landing.
Casi d'uso
Insegnamento della divisibilità per somma di cifre
Mostri agli studenti le cifre ordinate, la loro somma e l'esito dividi-o-fallisci affinché la definizione di Niven sia concreta, non astratta.
Controlli strutturali leggeri su seriali
Applichi un flag Harshad deterministico e il quoziente a identificatori di ticket o di lotto in pipeline che necessitano di un cancello additivo semplice.
Domande frequenti
Che cos'è un numero Harshad o di Niven?
Un intero positivo divisibile per la somma delle sue cifre decimali. Ad esempio 18 ha somma delle cifre 9 e 18÷9=2, quindi 18 è Harshad (Niven).
Cosa significa il campo quotient?
Quando la somma non divide n, quotient è null.
Perché n minore di 1 viene rifiutato?
La definizione classica copre solo gli interi positivi.
È supportata solo la base dieci?
Sì. Questo verificatore usa solo cifre decimali, in linea con l'intento di ricerca abituale Harshad/Niven. Altre basi sono fuori ambito qui.
Quanto costa?
Lo strumento del browser è gratuito e viene eseguito in locale.
Il 18 è un numero Harshad?
Sì. Le cifre 1 e 8 sommano 9, e 18 diviso 9 dà 2 senza resto. Il risultato mostra le cifre, la somma 9 e il quoziente 2.
Strumenti correlati
Per sviluppatori — accesso via API
Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.
Endpoint
Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.
Chiamala dal tuo 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)Esempio di richiesta
{
"n": 18
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "numth.harshad_number",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.
Prezzi
Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.
Limiti
min_n | 1 |
max_n | 9007199254740991 |
Errori
| HTTP | Codice | Significato |
|---|---|---|
401 | unauthorized | Chiave API mancante o non valida: controlla l'header Authorization. |
402 | insufficient_balance | Credito esaurito: ricarica per continuare a eseguire attività. |
404 | unknown_type | Tipo di attività sconosciuto: controlla il campo type della richiesta. |
429 | rate_limited | Troppe richieste in poco tempo: rallenta e riprova tra qualche secondo. |
Note tecniche
Lo strumento del browser e l'API condividono un'unica funzione pura, così che i controlli interattivi e le pipeline automatiche non divergano mai in silenzio.
Cosa invia Lei e cosa riceve in risposta
Zero e gli interi negativi falliscono perché la definizione classica di Harshad e Niven si applica solo agli interi positivi; il messaggio di errore indica che n deve essere almeno uno affinché moduli e script possano correggere l'input senza indovinare. Poiché il motore è lavoro di parse puro, lo stesso n produce sempre lo stesso oggetto, senza deriva di modello e senza stato memorizzato tra le chiamate. Fornisca un intero positivo obbligatorio nel campo n, oppure gli alias number, value o integer. I valori mancanti, non interi, minori di uno o maggiori del massimo intero sicuro vengono rifiutati con invalid_input e non vengono addebitati. In caso di successo, la risposta include l'n normalizzato, digits come array di valori di cifre decimali nell'ordine dal più significativo al meno significativo, digit_count come lunghezza di quell'array, digit_sum come totale, is_harshad come booleano e quotient come l'intero n diviso per digit_sum quando is_harshad è true, oppure null quando la somma non divide n. Controlli di esempio: n uguale a diciotto produce cifre uno e otto, digit_sum nove, is_harshad true, quotient due; n uguale a diciannove produce digit_sum dieci, is_harshad false, quotient null; n uguale a dodici produce cifre uno e due, somma tre, quoziente quattro. Il contratto è JSON stabile, adatto a test unitari, dimostrazioni in classe e pipeline batch.
Dove i controlli Harshad compaiono nel lavoro reale
Poiché questa capacità è un motore di parse puro, il prezzo API è la base pubblicata di $0.002 per elemento riuscito e la validazione fallita non consuma saldo.
Casi di integrazione
Fixture di contest e compiti
Verifichi se n è Harshad e catturi il quoziente esatto per problemi di olimpiade e chiavi di risposta in classe.