Introdução
Neste laboratório, você aprenderá como comparar dois números em Java para determinar se um é maior que o outro. Exploraremos o uso de operadores de comparação, especificamente o operador "maior que" (>), que é fundamental para tomar decisões condicionais em programação.
Através de exercícios práticos, você implementará código para ler a entrada do usuário, aplicar o operador maior que para comparar diferentes tipos numéricos e lidar com casos em que os números são iguais. Este laboratório fornecerá experiência prática no uso de instruções condicionais e operadores de comparação em Java.
Usar o Operador de Comparação 'Maior que'
Nesta etapa, aprenderemos como usar operadores de comparação em Java para comparar dois números. Especificamente, focaremos no operador "maior que" (>). Os operadores de comparação são fundamentais em programação, pois nos permitem tomar decisões com base na relação entre os valores.
Vamos criar um novo programa Java para demonstrar o operador maior que.
Abra o arquivo
HelloJava.javano editor WebIDE, caso ele ainda não esteja aberto.Substitua todo o conteúdo do arquivo pelo seguinte código:
import java.util.Scanner; public class HelloJava { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.print("Enter the first number: "); int number1 = scanner.nextInt(); System.out.print("Enter the second number: "); int number2 = scanner.nextInt(); if (number1 > number2) { System.out.println("The first number is greater than the second number."); } scanner.close(); } }Vamos analisar as novas partes deste código:
import java.util.Scanner;: Ainda precisamos doScannerpara obter a entrada do usuário.System.out.print("Enter the first number: ");: Solicita ao usuário que insira o primeiro número.int number1 = scanner.nextInt();: Lê o primeiro inteiro inserido pelo usuário e o armazena na variávelnumber1.System.out.print("Enter the second number: ");: Solicita ao usuário que insira o segundo número.int number2 = scanner.nextInt();: Lê o segundo inteiro inserido pelo usuário e o armazena na variávelnumber2.if (number1 > number2): É aqui que usamos o operador maior que (>). Esta linha verifica se o valor denumber1é maior que o valor denumber2. O código dentro das chaves{}só será executado se essa condição for verdadeira.System.out.println("The first number is greater than the second number.");: Esta linha será impressa senumber1for realmente maior quenumber2.
Salve o arquivo (Ctrl+S ou Cmd+S).
Compile o programa modificado no Terminal:
javac HelloJava.javaSe não houver erros de compilação, você não verá nenhuma saída.
Execute o programa compilado:
java HelloJavaO programa solicitará que você insira dois números. Insira um número para a primeira solicitação, pressione Enter, depois insira um segundo número e pressione Enter novamente.
Por exemplo, se você inserir
10para o primeiro número e5para o segundo número, a saída será:Enter the first number: 10 Enter the second number: 5 The first number is greater than the second number.Se você inserir
5para o primeiro número e10para o segundo número, não haverá saída após inserir o segundo número, porque a condiçãonumber1 > number2é falsa.
Você usou com sucesso o operador de comparação maior que para comparar dois números e executar código com base no resultado.
Testar com Diferentes Tipos Numéricos
Na etapa anterior, comparamos dois números inteiros. Java possui diferentes tipos numéricos para lidar com vários tipos de números, como números inteiros (inteiros) e números com casas decimais (números de ponto flutuante). Nesta etapa, exploraremos como os operadores de comparação funcionam com diferentes tipos numéricos.
Java possui vários tipos numéricos primitivos, incluindo:
int: para números inteiros (inteiros)double: para números de ponto flutuante (números com decimais)float: também para números de ponto flutuante, mas geralmente menos preciso quedoublelong: para números inteiros muito grandes
Operadores de comparação como > podem ser usados para comparar valores de diferentes tipos numéricos. Java frequentemente realizará a conversão automática de tipos (ampliação) para tornar a comparação possível. Por exemplo, ao comparar um int e um double, o int será convertido em um double antes da comparação.
Vamos modificar nosso programa para comparar um inteiro e um double.
Abra o arquivo
HelloJava.javano editor WebIDE.Substitua o código existente pelo seguinte:
import java.util.Scanner; public class HelloJava { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.print("Enter an integer: "); int intNumber = scanner.nextInt(); System.out.print("Enter a decimal number: "); double doubleNumber = scanner.nextDouble(); if (intNumber > doubleNumber) { System.out.println("The integer is greater than the decimal number."); } if (doubleNumber > intNumber) { System.out.println("The decimal number is greater than the integer."); } scanner.close(); } }Neste código atualizado:
- Agora lemos um
intna variávelintNumberusandoscanner.nextInt(). - Lemos um
doublena variáveldoubleNumberusandoscanner.nextDouble(). - Usamos o operador
>para compararintNumberedoubleNumber. Observe que adicionamos uma segunda instruçãoifpara verificar se o número decimal é maior que o inteiro.
- Agora lemos um
Salve o arquivo (Ctrl+S ou Cmd+S).
Compile o programa no Terminal:
javac HelloJava.javaExecute o programa:
java HelloJavaInsira um inteiro e um número decimal quando solicitado.
Por exemplo, se você inserir
10para o inteiro e9.5para o número decimal, a saída será:Enter an integer: 10 Enter a decimal number: 9.5 The integer is greater than the decimal number.Se você inserir
5para o inteiro e5.1para o número decimal, a saída será:Enter an integer: 5 Enter a decimal number: 5.1 The decimal number is greater than the integer.
Isso demonstra que Java pode comparar diferentes tipos numéricos usando o operador maior que.
Lidar com Números Iguais
Nas etapas anteriores, usamos o operador maior que (>) para verificar se um número é maior que outro. No entanto, o que acontece se os dois números forem iguais? Nosso programa atual não lida explicitamente com esse caso.
Nesta etapa, aprenderemos como verificar a igualdade usando o operador de igualdade (==) e como usar as instruções if-else if-else para lidar com múltiplas possibilidades, inclusive quando os números são iguais.
O operador de igualdade (==) em Java é usado para verificar se dois valores são iguais. Ele retorna true se os valores forem os mesmos e false caso contrário.
Vamos modificar nosso programa para comparar dois números e imprimir uma mensagem indicando se o primeiro número é maior que, menor que ou igual ao segundo número.
Abra o arquivo
HelloJava.javano editor WebIDE.Substitua o código existente pelo seguinte:
import java.util.Scanner; public class HelloJava { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.print("Enter the first number: "); double number1 = scanner.nextDouble(); System.out.print("Enter the second number: "); double number2 = scanner.nextDouble(); if (number1 > number2) { System.out.println("The first number is greater than the second number."); } else if (number1 < number2) { System.out.println("The first number is less than the second number."); } else { System.out.println("The two numbers are equal."); } scanner.close(); } }Vamos examinar as mudanças:
- Agora estamos lendo dois valores
doublepara permitir mais flexibilidade nos testes. if (number1 > number2): Esta é a mesma verificação de antes. Senumber1for maior quenumber2, a primeira mensagem é impressa.else if (number1 < number2): Esta é uma nova parte. O blocoelse ifé executado somente se a condiçãoifanterior (number1 > number2) for falsa. Aqui, usamos o operador menor que (<) para verificar senumber1é menor quenumber2.else: Este bloco é executado se nenhuma das condiçõesifouelse ifprecedentes for verdadeira. Neste caso, senumber1não for maior quenumber2e não for menor quenumber2, ele deve ser igual anumber2.
- Agora estamos lendo dois valores
Salve o arquivo (Ctrl+S ou Cmd+S).
Compile o programa no Terminal:
javac HelloJava.javaExecute o programa:
java HelloJavaInsira dois números, incluindo casos em que eles são iguais.
Se você inserir
7.5para o primeiro número e7.5para o segundo número, a saída será:Enter the first number: 7.5 Enter the second number: 7.5 The two numbers are equal.Se você inserir
10e5, verá "The first number is greater than the second number." Se você inserir5e10, verá "The first number is less than the second number."
Você agora usou com sucesso as instruções if-else if-else e o operador de igualdade (==) para lidar com diferentes resultados de comparação, incluindo a igualdade.
Resumo
Neste laboratório, aprendemos como verificar se um número é maior que outro em Java. Começamos usando o operador de comparação > dentro de uma instrução if para comparar dois valores inteiros inseridos pelo usuário. Isso demonstrou o conceito fundamental de usar operadores de comparação para tomar decisões em nosso código.
Em seguida, exploramos como lidar com diferentes tipos numéricos, garantindo que nossa lógica de comparação funcione corretamente para vários tipos de dados, como double e float. Finalmente, abordamos o cenário em que os dois números são iguais, expandindo nossa lógica condicional para incluir o operador "maior ou igual a" (>=) ou verificações separadas para igualdade.



