2
respostas

[PROJETO] Avaliação de Filmes

    QUAL OUTRA FORMA SERIA POSSIVEL PARA SOLICITAR AS NOTAS PARA O USUARIO? SEM TER UM MINIMO E MAXIMO DE NOTAS NECESSARIAS PARA EFETUAR O CALCULO.

public class Filmes {
    private String titulo;
    private ArrayList<Integer> avaliacoes;

public String getTitulo() {
    return titulo;
}

public Filmes (String titulo){
    this.titulo = titulo;
    this.avaliacoes = new ArrayList<>();
}

public void adicionarAvaliacao(int nota){
    if (nota>=1 && nota <=5){
        avaliacoes.add(nota);
    } else {
        System.out.println("Nota inválida. ");
    }
}

    public double calcularMedia(){
        int soma = 0;
        for (int nota : avaliacoes){
        soma += nota;
        } return (double) soma / avaliacoes.size();
    }
}

public class AvaliaçaoFilmes {
    public static void main(String[] args) {

    Scanner scanner = new Scanner(System.in);
    System.out.println("Digite o nome de um filme: ");
    String nomeFilme = scanner.next();
    Filmes filme = new Filmes(nomeFilme);
    System.out.println("Digite 5 avaliações para o filme: ");
    int nota1 = scanner.nextInt();
    int nota2 = scanner.nextInt();
    int nota3 = scanner.nextInt();
    int nota4 = scanner.nextInt();
    int nota5 = scanner.nextInt();
    filme.adicionarAvaliacao(nota1);
    filme.adicionarAvaliacao(nota2);
    filme.adicionarAvaliacao(nota3);
    filme.adicionarAvaliacao(nota4);
    filme.adicionarAvaliacao(nota5);

    System.out.printf("Média das avaliações para %s: %.2f\n",
        filme.getTitulo(), filme.calcularMedia());

        scanner.close();
    }
}
2 respostas

Oi, Letícia! Como vai?

Gostei da forma como você utilizou encapsulamento e uma ArrayList para armazenar as avaliações do filme. Isso mostra um bom entendimento de como guardar vários valores e depois percorrê-los para calcular a média com um for-each.

A estrutura da classe também está bem organizada, separando responsabilidade entre armazenar avaliações e calcular a média.

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

Deixei ali no inicio uma pergunta, se conseguires me dar alguma dica :)
QUAL OUTRA FORMA SERIA POSSIVEL PARA SOLICITAR AS NOTAS PARA O USUARIO?
SEM TER UM MINIMO E MAXIMO DE NOTAS NECESSARIAS PARA EFETUAR O CALCULO.