POTHIEDU Não Decore a Resposta. Entenda o Caminho

16 É Divisível Por 3

16 É Divisível Por 3

Divisibilidade por 3: o que acontece na prática

A regra de divisibilidade por 3 é simples de aprender, mas todo mundo acaba se confundindo em algum momento. A regra diz que você soma os dígitos do número e vê se o resultado é divisível por 3. Se for, o número original também é. Vamos aplicar a regra. 16: soma dos dígitos é 1 + 6 = 7. 7 não é divisível por 3. Portanto, 16 não é divisível por 3. O quociente seria 5 com resto 1, ou aproximadamente 5,333 se você quiser o valor decimal. Esse tipo de verificação aparece o tempo todo em programação, especialmente quando você precisa distribuir itens em grupos iguais ou calcular índices. Eu trabalhava num sistema de partitioning de dados onde tinha que decidir se um conjunto de registros caberia em lotes de 3. Um colega meu escreveu uma condição do tipo if (count % 3 == 0) e, numa revisão, apontei que ele estava validando divisibilidade, mas havia casos onde o count vinha como 16 por conta de um filtro mal definido. O bug era real: registros estavam sendo truncados porque a lógica assumia que 16 era divisível por 3 em algum ponto do pipeline. A correção foi simples, mas demorou duas horas pra rastrear porque o número 16 aparecia em vários lugares do código e ninguém fazia a conta na mão.

O que muitos iniciantes não percebem é que a regra da soma dos dígitos funciona porque 10 1 (mod 3), então qualquer potência de 10 também é congruente a 1 módulo 3. Isso significa que o valor posicional do dígito não importa, só a soma. É por isso que você pode somar recursivamente até obter um dígito único — o resultado final seria 1, 2, 4, 5, 7 ou 8 para números não divisíveis por 3, e 3, 6 ou 9 para os que são. Números como 16 chegam ao 7 e param aí. Uma armadilha comum é confiar cegamente na soma dos dígitos sem verificar se o número é inteiro. Em linguagens dinâmicas, floats podem entrar no sistema e a soma dos dígitos se torna meaningless. Num projeto recente, vi um cálculo que retornava 15,9999999 por precisão de ponto flutuante, e a verificação de divisibilidade falhava silenciosamente. A solução foi arredondar para o inteiro mais próximo antes de aplicar a regra. Se você precisa verificar divisibilidade por 3 em lote grande, fazer a soma dos dígitos é mais rápido que divisão inteira. Mas se o número é muito grande — tipo mais de 18 dígitos — some os dígitos recursivamente até reduzir a algo que você consiga tratar com aritmética normal. Isso economiza tempo em batch processing, onde cada operação de módulo numérico grande adiciona latência desnecessária.

16 dividido por 3 dá 5 resto 1. Pronto. Isso não é controverso e não muda dependendo de quem calcula.

É divisível por 3? - YouTube
É divisível por 3? - YouTube