TTotientRill
Ambiente de programação com IA

Contagens da função totiente

Conte inteiros de um a n coprimos com n pela função totiente, limitando n a 1000000000.

● ● ●TotientRill●
Fluxos de trabalho · Contagens da função totiente ×
def totient(value):
    if type(value) is not int or not 1 <= value <= 1000000000:
        raise ValueError("value.range")
    remaining, result, factor = value, value, 2
    while factor * factor <= remaining:
        if remaining % factor == 0:
            result -= result // factor
            while remaining % factor == 0:
                remaining //= factor
        factor += 1
    if remaining > 1:
        result -= result // remaining
    return result
✳Conte inteiros de um a n coprimos com n pela função totiente, limitando n a 1000000000.
✓ AlteraçõesRevise antes de aplicar ↗
Ilustração do ambiente
  1. Projeto

    Confira um, primos e fatores repetidos, rejeitando zero, negativos, frações e booleanos.

  2. Revise antes de aplicar

    Compare o comportamento real com o resultado esperado. Se uma verificação falhar, investigue a causa antes de fazer outras alterações.

  3. Modelos

    Configure um endpoint compatível com OpenAI ou Anthropic com a URL base e uma chave API, quando necessária. Teste a conexão. O servidor local precisa estar em execução; ferramentas remotas podem transmitir dados separadamente.

Fluxos de trabalho

Contagens da função totiente

Fluxos de trabalho ↗
Fluxos de trabalho
def totient(value):
    if type(value) is not int or not 1 <= value <= 1000000000:
        raise ValueError("value.range")
    remaining, result, factor = value, value, 2
    while factor * factor <= remaining:
        if remaining % factor == 0:
            result -= result // factor
            while remaining % factor == 0:
                remaining //= factor
        factor += 1
    if remaining > 1:
        result -= result // remaining
    return result
Ambiente de programação com IA

Transforme uma função que você não entende em uma tarefa revisável

TotientRill é um ambiente de programação com IA para Windows para avançar em código-fonte desconhecido. Abra uma pasta de projeto e peça ao modelo conectado que explique uma função em relação às suas entradas, ao código chamador e aos testes. O objetivo é um próximo passo útil de desenvolvimento: esclarecer uma premissa, melhorar um fluxo de erro ou fazer uma alteração delimitada que você possa examinar.

Por exemplo, totient.py oferece um ponto de partida para revisar uma função numérica auxiliar com limites explícitos de entrada. Pergunte por que o código chamador precisa do resultado, o que espera para a menor entrada aceita e como valores inválidos são informados. O exemplo pode apoiar uma tarefa de aprendizado no projeto sem transformar o ambiente em uma promessa de recursos matemáticos prontos. Mantenha a explicação conectada ao código real que pretende manter.

Selecione um modelo de IA sem filtros se ele estiver disponível por seu endpoint suportado compatível com OpenAI ou da Anthropic. Forneça as configurações do serviço e as credenciais exigidas, observando seus limites de contexto e ferramentas. Depois, compare a explicação com o código e pequenos casos conferidos de forma independente antes de editar. Revise a correção resultante e execute os testes relevantes do projeto. Isso oferece a um iniciante uma forma de questionar uma resposta e construir compreensão por meio de evidências, em vez de aceitar terminologia desconhecida por confiança.

Da explicação a uma pequena contribuição

O que devo pedir quando a finalidade da função não está clara?

Pergunte quais chamadores usam o resultado e o que eles esperam, com referências aos arquivos relevantes. Uma descrição matemática, por si só, pode não explicar a finalidade na aplicação. Mantenha explícito qualquer contexto de uso ausente antes de propor uma melhoria.

Como um iniciante pode questionar a explicação do modelo?

Escolha uma pequena entrada com um resultado que você consiga estabelecer de forma independente e acompanhe-a pelo código. Pergunte sobre qualquer divergência. Repetir o próprio exemplo do modelo é menos útil do que conferir um caso que teste a afirmação específica de que você duvida.

Devo remover um limite de entrada que parece arbitrário?

Primeiro investigue por que ele existe e como o código chamador trata a rejeição. Ele pode refletir um requisito de carga de trabalho ou interface. Ampliar as entradas aceitas altera o contrato e pode exigir nova verificação, mesmo que excluir a condição seja tecnicamente simples.

Qual é uma primeira correção sensata em código numérico desconhecido?

Escolha um problema observado com resultado esperado claro, como uma mensagem de erro inconsistente com as entradas aceitas. Mantenha alterações de algoritmo separadas até entender suas consequências. Revise o diff e mantenha uma verificação que demonstre a melhoria real.

Baixar para Windows ↗

TotientRill · Atualizado 2026-10-25