Termo de Perrin
Obtenha qualquer termo da sequência de Perrin, que começa 3, 0, 2 e soma os termos de duas e três posições atrás: P(10) vale 17, ou seja, 10 mais 7. Os índices vão de 0 a 130. 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
- 10
- Número de Perrin
- 17
- Recorrência
- P(0)=3; P(1)=0; P(2)=2; P(n)=P(n-2)+P(n-3) for n>2
A sequência de Perrin começa com três, zero e dois; depois, cada termo resulta da soma dos valores que estão duas e três posições atrás. Esta calculadora retorna o termo no índice n, contado a partir de zero, além dos valores iniciais e da recorrência exata adotada. Ela ajuda a conferir exercícios de matemática discreta, testar código de sequências e comparar recorrências semelhantes com condições iniciais diferentes. O cálculo é determinístico, utiliza somente adições inteiras e não depende de rede, aleatoriedade nem horário. Índices negativos são recusados, sem qualquer reinterpretação silenciosa.
Entenda a convenção da sequência de Perrin
Esta capacidade segue a definição clássica de Perrin com índices iniciados em zero: P(0) é 3, P(1) é 0 e P(2) é 2. Para qualquer índice maior que dois, P(n) corresponde a P(n-2) mais P(n-3). Assim, os primeiros termos são 3, 0, 2, 3, 2, 5, 5, 7, 10, 12, 17 e 22.
A recorrência usa os mesmos saltos encontrados na sequência de Padovan, porém os valores iniciais são diferentes. Essa distinção é importante, pois regras de recorrência idênticas produzem termos totalmente distintos quando as sementes mudam. A resposta apresenta uma fórmula resumida e a definição completa das sementes, deixando clara a convenção usada.
Como a indexação começa em zero, uma entrada igual a zero retorna 3, e não o primeiro passo calculado pela recorrência. A operação entrega apenas o termo pedido, sem formar uma lista com todos os anteriores. Esse comportamento explícito torna a ferramenta adequada para exercícios, validações automáticas e documentação em que um deslocamento de índice seria difícil de perceber.
Envie um índice e interprete a resposta
Informe n como um número inteiro não negativo entre zero e 130. Uma resposta bem-sucedida repete o índice normalizado no campo n, coloca o inteiro solicitado em perrin e inclui formula e recurrence para explicar o procedimento. Por exemplo, n igual a 10 retorna o valor de Perrin 17, pois P(10) é P(8) mais P(7), ou seja, 10 mais 7.
O controle do navegador pode receber texto composto por um inteiro sem sinal, mas frações, notação científica, entrada vazia e texto estranho são recusados em vez de arredondados ou interpretados por suposição. O cálculo mantém uma janela móvel com três termos, consome memória constante e faz no máximo 128 adições.
Use o resultado em aulas, testes e algoritmos
Os termos de Perrin são úteis no ensino de relações de recorrência porque a regra é curta, enquanto as sementes incomuns revelam suposições descuidadas. Em sala de aula, compare a fórmula retornada com a expansão feita pelo estudante e confira os casos básicos antes de avaliar contas posteriores. Em testes de software, inclua os índices zero, um e dois em casos separados; depois acrescente um termo mais avançado e uma entrada negativa.
Esses exemplos identificam sementes erradas, indexação acidental iniciada em um, soma de termos adjacentes no estilo Fibonacci e validações que permitem índices negativos sem suporte. Esta capacidade não estende a sequência a índices negativos, não devolve um prefixo completo e não aproxima valores além do limite inteiro exato. Para termos muito grandes, prefira uma implementação baseada em BigInt com saída textual claramente documentada.
Em atividades didáticas e validações comuns, a resposta inteira limitada é mais simples de inspecionar, serializar e comparar entre ambientes.
Casos de uso
Conferir um exercício de recorrência
Valide o n-ésimo termo de Perrin calculado por um estudante, mantendo visíveis as sementes e a regra dos saltos dois e três.
Testar uma implementação de sequência
Crie casos determinísticos para valores básicos e índices posteriores sem duplicar a recorrência de referência em cada conjunto de testes.
Comparar números de Perrin e Padovan
Demonstre como sementes diferentes alteram uma sequência mesmo quando duas definições usam o mesmo padrão de recorrência.
Perguntas frequentes
Quais são os primeiros números de Perrin?
Com índices iniciados em zero, eles são 3, 0, 2, 3, 2, 5, 5, 7, 10, 12, 17 e 22.
Qual recorrência esta calculadora utiliza?
Ela usa P(0)=3, P(1)=0 e P(2)=2, seguida de P(n)=P(n-2)+P(n-3) para n maior que 2.
Quanto vale P(10) na sequência de Perrin?
P(10) vale 17. É a soma de P(8), que vale 10, com P(7), que vale 7: os termos que ficam duas e três posições antes.
Qual a diferença entre a sequência de Perrin e a de Padovan?
As duas usam a mesma regra, somar os termos de duas e três posições atrás, mas partem de valores diferentes. Perrin começa 3, 0, 2, então os termos seguintes são totalmente diferentes.
Qual é o maior índice que posso usar?
Qualquer índice inteiro de 0 a 130. Até esse ponto todos os termos são exatos. Índices negativos são recusados em vez de reinterpretados, e o índice 0 retorna 3.
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/perrin-sequence \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"n":10}'const res = await fetch("https://api.kit.forhosting.com/numth/perrin-sequence", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"n": 10
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/numth/perrin-sequence",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"n": 10
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/numth/perrin-sequence", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"n":10}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"n":10}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/numth/perrin-sequence", 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": 10
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "numth.perrin_sequence",
"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
max_n | 130 |
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
Entenda a convenção da sequência de Perrin
Índices negativos ficam fora do contrato e geram o erro invalid_input.
Envie um índice e interprete a resposta
O limite superior preserva a aritmética exata: até o índice 130, todos os valores cabem na faixa de inteiros seguros do JavaScript, tanto no navegador quanto no Worker. Dessa forma, o executor gratuito e a API apresentam resultados idênticos sem converter o número em uma string inesperada. Cada solicitação válida pela API custa US$ 0,002; uma entrada incorreta é indicada como invalid_input e não representa um termo da sequência.
Use o resultado em aulas, testes e algoritmos
O resultado JSON determinístico também funciona bem em avaliadores de desafios de programação e suítes de regressão: verifique os campos n e perrin e preserve o texto de recurrence como explicação legível quando houver falha.
Perguntas técnicas
O índice n começa em zero ou em um?
Ele começa em zero. Portanto, n=0 retorna 3, n=1 retorna 0 e n=2 retorna 2.
O que acontece quando n é negativo?
A solicitação falha com invalid_input, pois esta capacidade aceita somente a sequência clássica de Perrin com índices não negativos.
Quanto custa uma solicitação de API?
Uma solicitação bem-sucedida pela API custa US$ 0,002. O mesmo cálculo determinístico também pode ser executado gratuitamente no navegador.