Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

1
resposta

[Projeto] Quis fazer um pouco diferente do enunciado, só para praticar formas diferentes.

package br.com.praticando.java;

import java.util.Scanner;

public class ParOuImpar {
    public static void main(String[] args) {
        Scanner leia = new Scanner(System.in);

        System.out.println("Digite um número: ");
        int numero = leia.nextInt();

        System.out.println("Gostaria de saber se o número é Par ou Impar?: Sim ou Não");
        String resposta = leia.next();

        if(resposta.equals("Sim")){
            if (numero % 2 == 0){
                System.out.println("O numero " + numero + " é Par");
            }else {
                System.out.println("O número é Impar!");
            }
        }else {
            System.out.println("Obrigada pela resposta!");
        }
    }
}
1 resposta

Oi, Sara. Tudo bem com você?

Sua solução para o exercício de classificação de números par ou ímpar foi criativa e você realmente explorou formas diferentes do que foi proposto no enunciado. Ao invés de apenas verificar se um número é par ou ímpar, você adicionou uma camada de interatividade com o Scanner, permitindo que o usuário digite o número e também escolha se quer ou não realizar a verificação. Essa foi uma abordagem legal para praticar estruturas condicionais e manipulação de entrada de dados.

O código funciona corretamente e a lógica do operador módulo para determinar paridade está implementada de forma apropriada. Você utilizou bem a classe Scanner para capturar entrada do usuário e empregou corretamente o método equals() para comparar strings. A estrutura condicional aninhada faz sentido no contexto do seu programa, onde primeiro você valida se o usuário quer realmente fazer a verificação e depois executa a lógica de par ou ímpar.

Uma dica interessante seria considerar validações adicionais, como tratamento para entradas inesperadas. Por exemplo, se o usuário digitar algo diferente de "Sim" ou "Não" na resposta, o programa simplesmente cai na cláusula else. Você também poderia usar equalsIgnoreCase() para aceitar variações como "sim", "SIM" ou "não", tornando o programa mais robusto e amigável.

Como você pensaria em estruturar esse código se precisasse fazer várias verificações de par ou ímpar em sequência, sem precisar reiniciar o programa a cada vez?

Parabéns pela solução criativa, Sara. O fórum está à disposição para novos desafios e dúvidas.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!