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

Resolução

/**
 * Imagine que você está desenvolvendo um sistema acadêmico simplificado para auxiliar professores
 * no acompanhamento de alunos. Seu desafio é criar uma solução que automatize o cálculo de médias
 * e forneça rapidamente o resultado, eliminando a necessidade de cálculos manuais e reduzindo erros.
 *
 * Crie uma classe que:
 * Represente os alunos com os atributos nome, nota 1´ e nota 2`.
 * Implemente um método que:
 * Calcule a média das notas.
 * Exiba o nome do aluno, suas notas e a média (com uma casa decimal).
 * Indique se o aluno foi aprovado (média >= 7) ou reprovado.
 * Exemplo de entrada:
 * nome = "João Silva"
 * nota1 = 6.5
 * nota2 = 7.5
 *
 * Saída esperada:
 * Aluno: João Silva
 * Nota 1: 6.5
 * Nota 2: 7.5
 * Média: 7,0
 * Situação: Aprovado
 */

package com.github.lucasdevrj.exercicios.calculadoasnotas;

public class Aluno {
    String nome;
    double primeiraNota;
    double segundaNota;
    String resultado;

    double calcularMedia() {
        double media = (primeiraNota + segundaNota) / 2;
        return media;
    }

    String exibirResultado() {
        resultado = calcularMedia() >= 7 ? "Situação: Aprovado" : "Situação: Reprovado";
        return resultado;
    }
}
package com.github.lucasdevrj.exercicios.calculadoasnotas;

import java.util.Scanner;

public class Principal {
    public static void main(String[] args) {
        Scanner entrada = new Scanner(System.in);
        Aluno aluno = new Aluno();

        System.out.print("Digite o nome do aluno: ");
        aluno.nome = entrada.nextLine();

        System.out.print("Digite a primeira nota: ");
        aluno.primeiraNota = entrada.nextDouble();

        System.out.print("Digite a segunda nota: ");
        aluno.segundaNota = entrada.nextDouble();

        entrada.close();

        String resultado = String.format(
                "Aluno: %s\nNota 1: %.1f\nNota 2: %.1f\nMédia: %.1f\n%s",
                aluno.nome,
                aluno.primeiraNota,
                aluno.segundaNota,
                aluno.calcularMedia(),
                aluno.exibirResultado()
        );

        System.out.println(resultado);
    }
}

Insira aqui a descrição dessa imagem para ajudar na acessibilidade
Insira aqui a descrição dessa imagem para ajudar na acessibilidade
Beleza?

1 resposta

Oi, Lucas! Tudo bem?

A sua atividade Resolução para o exercício Calculando as notas ficou bem estruturada e atende bem à proposta de praticar classes, atributos e métodos em Java.

Você separou bem as responsabilidades entre a classe Aluno, que guarda os dados e calcula a média, e a classe Principal, que cuida da entrada e saída de informações. Isso reforça uma boa prática de organização do código e ajuda na manutenção do projeto.

Uma dica é evitar guardar o atributo resultado quando ele pode ser calculado diretamente no método exibirResultado(), deixando a classe mais simples e reduzindo estados desnecessários; assim, o método apenas retorna "Situação: Aprovado" ou "Situação: Reprovado" com base na média atual.

Você pretende testar agora outros cenários, como notas iguais a 7.0, para validar o limite entre aprovado e reprovado?

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