Função de contagem de primos π(n)
Conta quantos primos são menores ou iguais a n: π(10) é 4, porque os primos são 2, 3, 5 e 7. Cada resposta também indica o maior primo igual ou inferior ao seu número, para qualquer limite de até cinco milhões. Grátis no seu navegador.
- Grátis
- Funciona no seu navegador
- Sem cadastro
- Seus dados não saem do seu aparelho
Executar grátis
Exemplo resolvido
- N
- 100
- π(n)
- 25
- Quantidade
- 25
- Maior primo
- 97
A função de contagem de primos π(n) responde a uma pergunta simples com raízes profundas na teoria dos números: quantos números primos são menores ou iguais a n? De aquecimentos de olimpíadas a estimativas analíticas como o teorema dos números primos, π(n) é o recenseamento padrão de primos em um intervalo inicial. Esta ferramenta avalia π(n) de forma determinística com o Crivo de Eratóstenes e devolve tanto a contagem quanto o maior primo encontrado em ou abaixo do seu limite.
O que π(n) significa e por que um crivo é o motor certo
Por definição π(n) é o número de primos p tais que p é no máximo n. Para n igual a dez os primos são dois, três, cinco e sete, então π(10) é quatro. Para n igual a cem a contagem é vinte e cinco e o maior primo é noventa e sete.
Listar candidatos um a um com divisão de teste funciona para n minúsculos, mas escala mal quando você só precisa da contagem: cada candidato custa uma busca de fatores limitada pela raiz, e ainda é preciso varrer todo inteiro até n. O Crivo de Eratóstenes inverte o trabalho: aloque uma tabela booleana (ou de bytes) de tamanho n mais um, marque os múltiplos de cada primo a partir do seu quadrado e depois percorra a tabela uma vez contando entradas não marcadas de dois até n.
A complexidade clássica é da ordem de n log log n passos aritméticos com memória linear em n. Esse é exatamente o perfil de uma capacidade de parse gratuita: CPU pura, sem E/S, e um resultado que nunca depende de um modelo, um relógio ou estado externo.
Onde contagens de primos aparecem no trabalho real
Programadores de competição usam π(n) como bloco de construção para tabelas de crivo, primos segmentados e problemas que perguntam quantos primos caem em um intervalo inicial antes de aplicar filtros mais difíceis. Professores atribuem exercícios de π(n) e precisam de um oráculo determinístico que também reporte o maior primo para os alunos confrontarem seus crivos manuais.
Engenheiros de dados e sistemas às vezes precisam de estimativas de densidade de primos ao dimensionar tabelas hash, escolher módulos perto de um limite ou validar que uma lista de primos gerada tem a cardinalidade esperada. Se mais tarde precisar da lista completa de primos, primalidade de um inteiro grande ou fatoração, trate isso como intenções de busca separadas em vez de sobrecarregar esta página centrada na contagem. π(n) continua a página certa quando a pergunta é simplesmente quantos primos estão em ou abaixo de n.
Casos de uso
Checagens de densidade de primos
Confirme que uma lista de primos gerada até n tem a cardinalidade esperada antes de usá-la em hashes, módulos ou demos didáticas.
Perguntas frequentes
O que é a função de contagem de primos π(n)?
π(n) é o número de primos menores ou iguais a n. Por exemplo π(10)=4 e π(100)=25. Esta ferramenta calcula essa contagem por crivo.
Isto lista todos os primos até n?
Não. Devolve a contagem (pi/count) e o maior primo ≤ n. Listar cada primo é outra tarefa e outra intenção de busca.
Quanto custa?
A ferramenta do navegador é grátis e roda localmente.
Quantos primos existem até 100?
Existem 25 primos até 100, então π(100) vale 25, e o maior deles é 97. Até 1000 a contagem sobe para 168.
Qual é o maior número que posso digitar?
Qualquer inteiro de 2 até cinco milhões. Números menores que 2 são recusados, porque não há primos até 1 e um simples zero seria fácil de interpretar errado.
Ferramentas relacionadas
Para desenvolvedores — acesso via API
Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.
Endpoint
Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.
Chame do seu código
curl -X POST https://api.kit.forhosting.com/numth/prime-counting \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"n":100}'const res = await fetch("https://api.kit.forhosting.com/numth/prime-counting", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"n": 100
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/numth/prime-counting",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"n": 100
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/numth/prime-counting", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"n":100}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"n":100}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/numth/prime-counting", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemplo de requisição
{
"n": 100
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "numth.prime_counting",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.
Preço
Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.
Limites
min_n | 2 |
max_n | 5000000 |
Erros
| HTTP | Código | O que significa |
|---|---|---|
401 | unauthorized | Token ausente ou inválido. Confira o header Authorization. |
402 | insufficient_balance | Saldo insuficiente para esta tarefa. Faça uma recarga e tente de novo. |
404 | unknown_type | Esse tipo de tarefa não existe. Confira o campo type no catálogo. |
429 | rate_limited | Muitas requisições em pouco tempo. Espere um instante e tente de novo. |
Notas técnicas
O que π(n) significa e por que um crivo é o motor certo
Este endpoint implementa esse crivo, registra o último índice não marcado como largest_prime e expõe π(n) sob pi e count para que SDKs e anotações de sala possam usar qualquer um dos nomes sem ambiguidade.
Contrato de entrada, limites e forma de uma resposta bem-sucedida
Não inteiros, campos vazios e valores acima de cinco milhões também falham na validação e não são cobrados. Checagens pontuais em que você pode confiar: π(2) é um com maior primo dois; π(10) é quatro com maior primo sete; π(100) é vinte e cinco com maior primo noventa e sete; π(1000) é cento e sessenta e oito. Envie um único campo inteiro n (os aliases number, value e limit são aceitos). Valores abaixo de dois são rejeitados com invalid_input porque não há primos menores ou iguais a um, e este produto trata esse limite como erro claro de cliente em vez de devolver um zero fácil de mal ler em formulários. Em sucesso a resposta inclui o n normalizado, pi e count com o mesmo valor inteiro, e largest_prime igual ao maior primo em ou abaixo de n. O preço da API é a base publicada de US$ 0,002 por item bem-sucedido; validação falha não consome saldo.
Onde contagens de primos aparecem no trabalho real
Como a capacidade é um motor de parse puro, o mesmo n sempre produz o mesmo JSON sem dependência de rede nem estado armazenado. Use o executor gratuito do navegador para checar lição de casa ou explorar limites pequenos e depois chame a API a partir de scripts e CI quando precisar de checagens em massa com saldo pré-pago.
Casos de integração
Checagens de competição e lição de casa
Verifique π(n) em aquecimentos de olimpíada e planilhas de crivo, com largest_prime devolvido para auditar tabelas marcadas à mão frente à contagem.
Teoria dos números amigável a pipelines
Chame o mesmo contrato determinístico de scripts e CI para que fixtures de contagem de primos nunca dependam de planilha ou formulário web casual.
Perguntas técnicas
Quais valores de n são aceitos?
Inteiros de 2 a 5,000,000. Valores abaixo de 2, acima do máximo, decimais e strings não numéricas falham com invalid_input.
Por que n abaixo de 2 é um erro?
Não há primos ≤ 1. Este endpoint exige n ≥ 2 para que formulários e APIs mostrem um erro de limite claro em vez de um zero silencioso fácil de mal ler.