Introdução
Neste laboratório, você aprenderá como verificar se um número é divisível por outro em Java. Exploraremos o uso do operador módulo (%) para determinar a divisibilidade, verificando se o resto de uma divisão é zero.
Você praticará o uso do operador módulo com diferentes números e divisores, e também aprenderá como lidar com o caso especial da divisão por zero para evitar erros em seus programas Java.
Use o Módulo para Divisibilidade
Nesta etapa, exploraremos como usar o operador módulo (%) em Java para verificar a divisibilidade. O operador módulo fornece o resto de uma divisão. Se o resto de uma divisão for 0, isso significa que o número é perfeitamente divisível pelo divisor.
Vamos criar um novo programa Java para demonstrar isso.
Abra o diretório
~/projectno Explorador de Arquivos à esquerda.Clique com o botão direito no espaço vazio dentro do diretório
~/projecte selecione "Novo Arquivo".Nomeie o novo arquivo
DivisibilityCheck.java.Abra o arquivo
DivisibilityCheck.javano Editor de Código.Copie e cole o seguinte código no editor:
public class DivisibilityCheck { public static void main(String[] args) { int number = 10; int divisor = 2; // Use the modulo operator to check for divisibility if (number % divisor == 0) { System.out.println(number + " is divisible by " + divisor); } else { System.out.println(number + " is not divisible by " + divisor); } number = 11; divisor = 3; if (number % divisor == 0) { System.out.println(number + " is divisible by " + divisor); } else { System.out.println(number + " is not divisible by " + divisor); } } }Vamos analisar as novas partes:
int number = 10;: Isso declara uma variável inteira chamadanumbere atribui a ela o valor 10.int divisor = 2;: Isso declara uma variável inteira chamadadivisore atribui a ela o valor 2.number % divisor: Esta é a operação de módulo. Ela calcula o resto quandonumberé dividido pordivisor.if (number % divisor == 0): Esta é uma instruçãoif. Ela verifica se o resultado da operação de módulo é igual a 0. Se for, o código dentro do blocoifé executado.else: Se a condição na instruçãoiffor falsa (o resto não é 0), o código dentro do blocoelseé executado.
Salve o arquivo (Ctrl+S ou Cmd+S).
Abra o Terminal na parte inferior do WebIDE. Certifique-se de estar no diretório
~/project. Caso contrário, digitecd ~/projecte pressione Enter.Compile o programa Java digitando o seguinte comando e pressionando Enter:
javac DivisibilityCheck.javaSe não houver erros, você não verá nenhuma saída. Um arquivo
DivisibilityCheck.classserá criado no diretório~/project.Execute o programa Java compilado digitando o seguinte comando e pressionando Enter:
java DivisibilityCheckVocê deve ver a seguinte saída:
10 is divisible by 2 11 is not divisible by 3
Essa saída confirma que nosso programa usou corretamente o operador módulo para verificar a divisibilidade.
Teste com Diferentes Divisores
Na etapa anterior, verificamos a divisibilidade de 10 por 2 e 11 por 3. Agora, vamos modificar nosso programa para testar com diferentes números e divisores para ver como o operador módulo se comporta.
Abra o arquivo
DivisibilityCheck.javano editor WebIDE, caso ainda não esteja aberto.Vamos adicionar mais alguns exemplos ao método
main. Adicione as seguintes linhas de código antes da chave de fechamento}do métodomain:System.out.println("\nTesting with different numbers:"); number = 15; divisor = 5; if (number % divisor == 0) { System.out.println(number + " is divisible by " + divisor); } else { System.out.println(number + " is not divisible by " + divisor); } number = 20; divisor = 7; if (number % divisor == 0) { System.out.println(number + " is divisible by " + divisor); } else { System.out.println(number + " is not divisible by " + divisor); } number = 100; divisor = 10; if (number % divisor == 0) { System.out.println(number + " is divisible by " + divisor); } else { System.out.println(number + " is not divisible by " + divisor); }Adicionamos três novas verificações com diferentes valores para
numberedivisor. A linhaSystem.out.println("\nTesting with different numbers:");simplesmente adiciona uma linha em branco e um título para tornar a saída mais clara.Salve o arquivo
DivisibilityCheck.javamodificado (Ctrl+S ou Cmd+S).Abra o Terminal e certifique-se de estar no diretório
~/project.Compile o programa Java atualizado:
javac DivisibilityCheck.javaNovamente, se a compilação for bem-sucedida, você não verá nenhuma saída.
Execute o programa compilado para ver os resultados com os novos casos de teste:
java DivisibilityCheckVocê deve ver a saída da etapa anterior, seguida pela saída dos novos casos de teste:
10 is divisible by 2 11 is not divisible by 3 Testing with different numbers: 15 is divisible by 5 20 is not divisible by 7 100 is divisible by 10
Ao adicionar esses casos de teste, você pode ver como o operador módulo identifica corretamente se um número é perfeitamente divisível por outro número. Este é um conceito fundamental usado em muitas tarefas de programação, como verificar números pares ou ímpares, ou realizar ações em intervalos regulares.
Lidar com Divisão por Zero
Na matemática, a divisão por zero é indefinida. Em programação, tentar dividir por zero (ou realizar uma operação de módulo com zero como divisor) normalmente causará um erro. É importante lidar com essa situação em seu código para evitar que seu programa trave.
Vamos modificar nosso programa DivisibilityCheck.java para incluir uma verificação de divisão por zero.
Abra o arquivo
DivisibilityCheck.javano editor WebIDE.Adicionaremos um novo caso de teste onde o divisor é 0. Adicione o seguinte código antes da chave de fechamento
}do métodomain:System.out.println("\nTesting division by zero:"); number = 10; divisor = 0; if (divisor == 0) { System.out.println("Error: Division by zero is not allowed."); } else if (number % divisor == 0) { System.out.println(number + " is divisible by " + divisor); } else { System.out.println(number + " is not divisible by " + divisor); }Aqui está o que adicionamos:
if (divisor == 0): Esta é uma nova instruçãoifque verifica se a variáveldivisoré igual a 0.System.out.println("Error: Division by zero is not allowed.");: Se o divisor for 0, esta linha imprime uma mensagem de erro.else if (number % divisor == 0): Esta é uma instruçãoelse if. Ela é verificada somente se a primeira condiçãoif(divisor == 0) for falsa. É aqui que realizamos a verificação do módulo, mas somente se o divisor não for zero.
Salve o arquivo
DivisibilityCheck.javamodificado.Abra o Terminal e certifique-se de estar no diretório
~/project.Compile o programa Java atualizado:
javac DivisibilityCheck.javaExecute o programa compilado:
java DivisibilityCheckVocê deve ver a saída das etapas anteriores, seguida pela saída do caso de teste de divisão por zero:
10 is divisible by 2 11 is not divisible by 3 Testing with different numbers: 15 is divisible by 5 20 is not divisible by 7 100 is divisible by 10 Testing division by zero: Error: Division by zero is not allowed.
Ao adicionar a verificação if (divisor == 0), tornamos nosso programa mais robusto, evitando um potencial erro quando o divisor é zero. Este é um aspecto importante da escrita de código confiável.
Resumo
Neste laboratório, aprendemos como verificar se um número é divisível por outro número em Java usando o operador módulo (%). Criamos um programa Java DivisibilityCheck.java e usamos a instrução if para verificar se o resto da divisão (number % divisor) é igual a 0. Se o resto for 0, o número é divisível pelo divisor. Demonstramos isso com exemplos onde o número é divisível e onde não é.



