Introdução
Neste laboratório, você aprenderá sobre a divisão inteira em Java. A divisão é a operação matemática que nos permite dividir uma quantidade por outra. Em Java, existem diferentes maneiras de realizar a divisão inteira, e é importante entender as diferenças entre elas.
Configurando o Ambiente
Abra o terminal e crie um novo arquivo Java usando o seguinte comando:
touch ~/project/IntegerDivision.java
Divisão Simples de Inteiros
Nesta etapa, você aprenderá como realizar a divisão inteira simples em Java. A divisão inteira simples ocorre quando tanto o divisor quanto o dividendo são números inteiros e o resultado também é um inteiro.
public class IntegerDivision {
public static void main(String[] args) {
int a = 25;
int b = 5;
int c = a / b;
System.out.println(a + " / " + b + " = " + c);
}
}
Aqui, definimos dois inteiros a e b, e realizamos a operação de divisão usando o operador /. O resultado é armazenado no inteiro c. Finalmente, imprimimos o resultado usando System.out.println().
Para executar o código, use o seguinte comando:
javac IntegerDivision.java && java IntegerDivision
A saída deve ser:
25 / 5 = 5
Perda de Dados na Divisão de Inteiros
Nesta etapa, você aprenderá como lidar com situações em que pode perder precisão na divisão inteira.
public class IntegerDivision {
public static void main(String[] args) {
int a = 10;
int b = 3;
int c = a / b;
System.out.println(a + " / " + b + " = " + c);
}
}
Neste caso, definimos dois inteiros a e b, mas obtemos um resultado diferente porque perdemos precisão. O resultado desta operação não é 3.3333, mas sim 3, uma vez que estamos lidando com inteiros.
Para executar o código, use o mesmo comando da etapa 2:
javac IntegerDivision.java && java IntegerDivision
A saída deve ser:
10 / 3 = 3
Divisão com Tipo de Dados Double
Nesta etapa, você aprenderá como lidar com situações em que precisa manter a precisão.
public class IntegerDivision {
public static void main(String[] args) {
int a = 10;
int b = 3;
double c = (double) a / b;
System.out.println(a + " / " + b + " = " + c);
}
}
Aqui, definimos dois inteiros a e b. No entanto, alteramos o tipo de dados de c de int para double. Também fazemos um cast (conversão) de a para um double para garantir que a operação de divisão seja feita usando a precisão double. Finalmente, imprimimos o resultado.
Para executar o código, use o mesmo comando da etapa 2:
javac IntegerDivision.java && java IntegerDivision
A saída deve ser:
10 / 3 = 3.3333333333333335
Divisão com Tipo de Dados Double Comum
Nesta etapa, você aprenderá outra maneira de lidar com situações em que precisa manter a precisão.
public class IntegerDivision {
public static void main(String[] args) {
int a = 10;
int b = 3;
double c = a / 3.0;
System.out.println(a + " / 3.0 = " + c);
}
}
Aqui, simplesmente mudamos um dos operandos para um double usando 3.0 em vez de 3. Isso garante que a seja dividido usando a precisão double.
Para executar o código, use o mesmo comando da etapa 2:
javac IntegerDivision.java && java IntegerDivision
A saída deve ser:
10 / 3.0 = 3.3333333333333335
Múltiplas Divisões com Tipo de Dados Double Comum
Nesta etapa, você aprenderá como realizar múltiplas divisões com precisão double.
public class IntegerDivision {
public static void main(String[] args) {
int a = 10;
int b = 3;
double c = a / 3.0;
double d = 2.0 / b;
System.out.println(a + " / 3.0 = " + c);
System.out.println("2.0 / " + b + " = " + d);
}
}
Definimos duas variáveis double, c e d, e realizamos duas divisões. Como mencionado anteriormente, usamos 3.0 para garantir a precisão double na primeira divisão. Na segunda divisão, usamos 2.0 para garantir a precisão double.
Para executar o código, use o mesmo comando da etapa 2:
javac IntegerDivision.java && java IntegerDivision
A saída deve ser:
10 / 3.0 = 3.3333333333333335
2.0 / 3 = 0.6666666666666666
Atribuição de Divisão
Nesta etapa, você aprenderá como realizar uma divisão usando o operador de atribuição de divisão /=, que é uma notação abreviada para x = x / y.
public class IntegerDivision {
public static void main(String[] args) {
int a = 10;
int b = 3;
double c = 2.0;
c /= b;
System.out.println("2.0 / " + b + " = " + c);
}
}
Definimos uma variável int a, uma variável int b e uma variável double c. Inicializamos c com 2.0. Em seguida, usamos o operador de atribuição de divisão para dividir c por b. Finalmente, imprimimos o resultado.
Para executar o código, use o mesmo comando da etapa 2:
javac IntegerDivision.java && java IntegerDivision
A saída deve ser:
2.0 / 3 = 0.6666666666666666
Divisão Inteira com Operador Módulo
Nesta etapa, você aprenderá sobre o operador módulo %, que fornece o resto de uma operação de divisão.
public class IntegerDivision {
public static void main(String[] args) {
int a = 10;
int b = 3;
int c = a % b;
System.out.println(a + " % " + b + " = " + c);
}
}
Definimos as variáveis int a e b, e usamos o operador módulo % para obter o resto da operação de divisão. O resultado é armazenado na variável int c, e imprimimos o resultado.
Para executar o código, use o mesmo comando da etapa 2:
javac IntegerDivision.java && java IntegerDivision
A saída deve ser:
10 % 3 = 1
Divisão por zero
Nesta etapa, você aprenderá o que acontece quando você divide por zero.
public class IntegerDivision {
public static void main(String[] args) {
int a = 10;
int b = 0;
int c = a / b;
System.out.println(a + " / " + b + " = " + c);
}
}
Definimos duas variáveis int a e b, e tentamos dividir a por b. Como a divisão por zero não é permitida, Java lança uma exceção em tempo de execução chamada ArithmeticException.
Se você tentar executar o código, verá uma mensagem de erro como esta:
Exception in thread "main" java.lang.ArithmeticException: / by zero
at IntegerDivision.main(IntegerDivision.java:5)
Corrigindo a Divisão por Zero
Nesta etapa, você aprenderá como corrigir erros de divisão por zero usando instruções condicionais.
public class IntegerDivision {
public static void main(String[] args) {
int a = 10;
int b = 0;
if (b != 0) {
int c = a / b;
System.out.println(a + " / " + b + " = " + c);
} else {
System.out.println("Cannot divide by zero");
}
}
}
Aqui, usamos uma instrução if para verificar se b é diferente de zero. Se b não for zero, realizamos a operação de divisão e imprimimos o resultado. Caso contrário, imprimimos uma mensagem de erro.
Para executar o código, use o mesmo comando da etapa 2:
javac IntegerDivision.java && java IntegerDivision
A saída deve ser:
Cannot divide by zero
Resumo
Neste laboratório, você aprendeu sobre diferentes maneiras de realizar a divisão de inteiros em Java. Você aprendeu como lidar com situações em que pode perder precisão, como realizar divisões com precisão double e como usar o operador módulo. Você também aprendeu como lidar com erros de divisão por zero usando instruções condicionais.



