ForHosting KIT · Matematica

Primo precedente

Trova il più grande primo strettamente minore del suo numero: sotto 10 ci sono 2, 3, 5 e 7, quindi la risposta è 7. Funziona per qualsiasi intero maggiore di 2 fino a mille miliardi, con la stessa risposta esatta ogni volta. Gratis nel suo browser.

  • Gratis
  • Funziona nel suo browser
  • Senza registrazione
  • I suoi dati restano sul dispositivo
Usalo da WebAPIEmailTelegramApp presto
Se inserisce
N
10
Ottiene
Primo precedente
7

Cercare il primo che si colloca immediatamente sotto un intero dato è un passo comune nei compiti di teoria dei numeri, nei problemi di gara e negli esperimenti crittografici che necessitano di un seme primo vicino.

Cosa significa «primo precedente» e quando è definito

Il primo precedente di un intero n è il massimo numero primo strettamente più piccolo di n. Ad esempio, quando n è 10 i primi sotto di esso sono 2, 3, 5 e 7, quindi il primo precedente è 7. Quando n stesso è primo — diciamo n uguale a 17 — il primo precedente resta quello sotto, che è 13, non 17; la definizione non restituisce mai n.

La nozione è definita solo quando esiste almeno un primo sotto n. Poiché 2 è il più piccolo primo, nessun intero minore o uguale a 2 ha un primo precedente: non c'è nulla di strettamente più piccolo che sia primo. Quel contratto coincide con i manuali e gli enunciati di gare di programmazione che chiedono il massimo primo minore di n senza inventare una risposta dove non esiste.

Internamente il motore scorre i candidati da n meno uno verso il basso e ne verifica ciascuno con un controllo di primalità deterministico finché compare il primo primo.

Gap tra primi, limiti e usi pratici

I gap tra primi crescono lentamente in media: vicino a una dimensione x la distanza tipica tra primi consecutivi è dell'ordine del logaritmo naturale di x, così una breve discesa da n di solito trova il primo precedente dopo solo pochi candidati. Se le serve il primo precedente di un intero di dimensione crittografica, le serve uno stack dedicato di interi grandi e un motore di primalità più forte; questa capacità leggera di parse non è quello strumento.

In pratica i docenti usano il primo precedente per illustrare domande di tipo Bertrand, gli studenti per verificare calcoli a mano prima di consegnare le dimostrazioni, e gli sviluppatori quando un protocollo o una regola di gioco necessita del massimo primo sotto un livello, un punteggio o una dimensione di bucket.

Controllare compiti e risposte «massimo primo sotto n»

Studenti e coach possono verificare il massimo primo minore di un bound senza elencare i primi a mano né rischiare errori di uno quando n stesso è primo.

Seminare primi vicini in script e test basati su proprietà

I generatori che necessitano di un primo strettamente sotto una dimensione, un punteggio o una lunghezza di tabella possono chiamare questo passo deterministico invece di spedire la propria divisione di prova.

Qual è il primo precedente di n?

È il massimo primo strettamente minore di n.

Il trova-primo-precedente è gratuito?

Lo strumento del browser è gratuito e gira in locale.

Qual è l'n massimo?

n deve essere un intero maggiore di 2 e al massimo 10^12 (un bilione). Valori più grandi richiedono uno stack di primalità multiprecisione fuori da questa capacità.

Che cosa succede se il mio numero è già primo?

Ottiene comunque il primo precedente, mai il numero stesso. Per 17 la risposta è 13, perché il primo precedente deve essere strettamente minore del numero inserito.

Perché 2 non ha un primo precedente?

Perché 2 è il primo più piccolo e sotto di lui non c'è nessun primo. Per questo il numero deve essere maggiore di 2; per 3 la risposta è 2.

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.

POSThttps://api.kit.forhosting.com/numth/prev-prime

Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.

curl -X POST https://api.kit.forhosting.com/numth/prev-prime \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"n":10}'
{
  "n": 10
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "numth.prev_prime",
  "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.

per richiesta$0.002

Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.

max_n1000000000000
HTTPCodiceSignificato
401unauthorizedChiave API mancante o non valida: controlla l'header Authorization.
402insufficient_balanceCredito esaurito: ricarica per continuare a eseguire attività.
404unknown_typeTipo di attività sconosciuto: controlla il campo type della richiesta.
429rate_limitedTroppe richieste in poco tempo: rallenta e riprova tra qualche secondo.

Questo trova-primo-precedente prende un intero n maggiore di 2 e restituisce il massimo primo strettamente minore di n — divisione di prova deterministica, senza campionamento, e gratis da provare nel browser prima di collegare lo stesso nucleo negli script tramite l'API.

Cosa significa «primo precedente» e quando è definito

Questa capacità richiede quindi n maggiore di 2 e risponde con invalid_input se invia 2, 1, 0 o un valore negativo. Non ottiene mai un «forse» probabilistico alla Miller–Rabin; per ogni n accettato nell'intervallo l'intero previous_prime è esatto e riproducibile tra browser e percorsi API.

Come chiamare l'API e cosa restituisce

La usi in pipeline di compiti, generatori di test basati su proprietà che necessitano di un bound primo vicino, o qualsiasi flusso che voglia un predecessore riproducibile senza installare un sistema di algebra computazionale né riscrivere a mano la divisione di prova. Invii un corpo JSON con un unico campo obbligatorio n — un intero strettamente maggiore di 2 e al massimo un bilione (10^12). Sono accettati gli alias number e value per lo stesso campo così moduli e client scritti a mano possono usare l'etichetta naturale. In caso di successo la risposta include n come accettato e previous_prime come il massimo primo strettamente minore di quel n. Controlli tipici: n di 3 produce previous_prime 2; n di 100 produce 97; n di 1000 produce 997. La validazione fallita — n mancante, non intero, frazione, valore minore o uguale a 2, o valore sopra il massimo pubblicato — restituisce invalid_input e non viene mai addebitata. Il prezzo è un $0.002 forfettario per richiesta riuscita (unità item con prezzo marginale zero).

Gap tra primi, limiti e usi pratici

Esistono comunque gap patologici, ed è per questo che questa capacità limita n a un bilione — abbastanza grande per problemi di aula, molte gare di programmazione ed esperimenti crittografici leggeri, e abbastanza piccolo perché la primalità per divisione di prova resti interattiva sul percorso puro del Worker senza librerie multiprecisione. Lo abbini a una routine di primo successivo se le serve la coppia vicina completa; questo endpoint risponde deliberatamente solo al lato strettamente-minore-di così l'intento di ricerca resta chiaro e la risposta minima.

Illustrare i gap tra primi nel materiale didattico

Confronti n con previous_prime su un intervallo di valori per mostrare come si comportano i gap senza costruire una tabella completa di primi nel taccuino della lezione.

Perché n = 2 viene rifiutato?

2 è il più piccolo primo, quindi non esiste un primo strettamente sotto di esso. Valori di n minori o uguali a 2 restituiscono invalid_input.

Come funziona il trova-primo-precedente?

Scorre i candidati da n − 1 verso il basso e ne verifica ciascuno con divisione di prova deterministica finché trova un primo, poi restituisce quell'intero come previous_prime.

Leggi la documentazione completa del KIT →