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!

2
respostas

Verificando aprovação em uma disciplina

import java.util.Scanner;

public class AprovacaoDisciplina {
    public static void main(String[] args) {
        double nota1;
        double nota2;
        double nota3;

        Scanner scanner = new Scanner(System.in);

        System.out.println("----- Calculadora de notas ------");

        System.out.println("Informe o nome do aluno: ");
        String nomealuno = scanner.next();

        System.out.println("Digite a primeira nota: ");
        nota1 = scanner.nextDouble();

        System.out.println("Digite a segunda nota: ");
        nota2 = scanner.nextDouble();

        System.out.println("Digite a terceira nota: ");
        nota3 = scanner.nextDouble();

        double media = (nota1 + nota2 + nota3) / 3;

        if (media >= 7) {
            System.out.printf("O aluno(a) %s está aprovado com média %.1f%n", nomealuno, media);
        } else {
            System.out.printf("O aluno(a) %s está reprovado com média %.1f", nomealuno, media);
        }

    }
}
2 respostas

Boa noite, Joao! Tranquilo?

Gostei demais da sua resposta, continue assim!

Mandou muito bem explorando o Scanner para entrada de dados com Java, aplicou de maneira eficiente o cálculo da média para avaliação e compreendeu como usar o if-else para verificar aprovação ou reprovação.

E um detalhe curioso para aprimorar seria mostrar também a situação do aluno com base em faixas de nota, deixando o resultado mais completo. Exemplo:

if (media >= 7) {
    System.out.printf("O aluno(a) %s está aprovado com média %.1f%n", nomealuno, media);
} else if (media >= 5) {
    System.out.printf("O aluno(a) %s está em recuperação com média %.1f%n", nomealuno, media);
} else {
    System.out.printf("O aluno(a) %s está reprovado com média %.1f%n", nomealuno, media);
}

Assim você diferencia melhor os casos e aproxima da lógica usada em escolas e universidades.

Se quiser aprofundar ainda mais, algumas boas práticas são:

  • Validação de entrada: garantir que as notas estejam entre 0 e 10.
  • Formatação de saída: usar printf para controlar casas decimais e deixar a mensagem mais clara.
  • Encapsulamento: criar um método separado para calcular a média e outro para verificar a situação do aluno.

Continue postando as suas soluções! Além de ganhar pontos de XP na plataforma, você pode ajudar outros estudantes no fórum.

Ah, uma pergunta: o que você gostaria de praticar mais agora, criar métodos auxiliares para organizar melhor o código ou trabalhar com validação de notas para deixar o programa mais robusto?

Abraço e bons estudos!

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!
import java.util.Scanner;

public class AprovacaoDisciplina {
    public static void main(String[] args) {
        double nota1;
        double nota2;
        double nota3;

        Scanner scanner = new Scanner(System.in);

        System.out.println("----- Calculadora de notas ------");

        System.out.println("Informe o nome do aluno: ");
        String nomeAluno = scanner.next();

        System.out.println("Digite a primeira nota: ");
        nota1 = scanner.nextDouble();

        System.out.println("Digite a segunda nota: ");
        nota2 = scanner.nextDouble();

        System.out.println("Digite a terceira nota: ");
        nota3 = scanner.nextDouble();

        double media = (nota1 + nota2 + nota3) / 3;

        if (media >= 7) {
            System.out.printf("Aluno: %s - Média: %.1f - Aprovado", nomeAluno, media );
        } else if (media >= 5) {
            System.out.printf("Aluno: %s - Média: %.1f - Recuperação", nomeAluno, media);
        } else {
            System.out.printf("Aluno: %s - Média: %.1f - Reprovado", nomeAluno, media);
        }
    }
}