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.
Gire uma palavra sem sinal à esquerda com largura de 1 a 64 bits.
def rotate_left(value, count, width):
if any(type(x) is not int for x in (value, count, width)):
raise ValueError("rotate.type")
if not 1 <= width <= 64 or not 0 <= value < (1 << width) or count < 0:
raise ValueError("rotate.range")
count %= width
mask = (1 << width) - 1
return ((value << count) | (value >> (width - count))) & maskCompare o comportamento real com o resultado esperado. Se uma verificação falhar, investigue a causa antes de fazer outras alterações.
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.
Teste rotações nulas e completas reduzindo a contagem módulo a largura, rejeitando contagens negativas e valores que não cabem.
def rotate_left(value, count, width):
if any(type(x) is not int for x in (value, count, width)):
raise ValueError("rotate.type")
if not 1 <= width <= 64 or not 0 <= value < (1 << width) or count < 0:
raise ValueError("rotate.range")
count %= width
mask = (1 << width) - 1
return ((value << count) | (value >> (width - count))) & maskBitWhorl oferece um ambiente de projeto para Windows em que você discute alterações de código-fonte que dependem de uma representação precisa. Abra o código e descreva os valores esperados pela aplicação ao redor. Peça ao modelo que explique os limites de entrada pertinentes antes de solicitar uma refatoração, para que uma expressão aparentemente mais simples não mude silenciosamente a operação.
Você pode levar rotate_word.py à sessão como tarefa concreta. Declare a largura da palavra e o comportamento esperado para uma contagem de rotação maior que essa largura, depois revise o código proposto junto com seus chamadores. O exemplo dá à conversa um contrato delimitado; não é uma alegação de que o ambiente fornece uma biblioteca de operações de bits.
Use alguns casos de teste especificados independentemente para conferir a proposta no seu ambiente. Inclua rotação zero, rotação de uma largura inteira e um valor com o bit mais alto aceito ativado. Inspecione também entradas rejeitadas, sobretudo se outra camada converte valores antes de chamar a função auxiliar. Preserve a convenção de representação da aplicação durante toda a edição.
Um modelo de IA com mecanismos de recusa removidos pode ajudar quando oferecido por um endpoint suportado compatível com OpenAI ou da Anthropic. Configure essa conexão e quaisquer credenciais exigidas no ambiente. As restrições do modelo, a capacidade de contexto e a disponibilidade de ferramentas ainda dependem do servidor selecionado; portanto, a verificação de aceitação cabe ao projeto, e não ao rótulo do modelo.
Confira o contrato atual antes de presumir que isso significa rotação na direção oposta. O exemplo rejeita contagens negativas. Se um chamador precisar de contagens com sinal, solicite isso como uma mudança explícita de comportamento e especifique resultados esperados dos dois lados de zero.
O mesmo inteiro e a mesma contagem podem produzir resultados diferentes com larguras de palavra distintas. Inclua as três entradas e a saída esperada. Sem esse contexto, um modelo pode explicar uma operação válida que apenas usa outra representação, diferente da aplicação.
Ela pode impor a representação de saída, de modo que removê-la pode alterar resultados observáveis. Pergunte como a edição proposta mantém a saída dentro da largura aceita e teste casos com bits altos. Revise chamadores que serializam ou comparam o resultado segundo a mesma convenção.
Compare seu comportamento com exemplos de limite escolhidos independentemente e com a política de entrada existente. Leia a explicação da semântica de deslocamento da linguagem, além da própria expressão. Código mais curto só é útil se preservar a representação exigida e o comportamento de rejeição.
BitWhorl · Atualizado 2026-10-25