1
resposta

[Projeto] ScreenMatch

Fiz de um Jeito Diferente na Votaçao

public class Main {
    public static void main(String[] args) {
    Filme PrimeiroFilme = new Filme();
    PrimeiroFilme.nomeFilme = "Shrek 4";
    PrimeiroFilme.incluidoPlano = true;
    PrimeiroFilme.lancamentoFilme = 2026;
    PrimeiroFilme.duracaoFilmeMin = 180;
    PrimeiroFilme.notaFilme = 0;
    PrimeiroFilme.totalNotaFilme = 0;

        PrimeiroFilme.FichaTecnica();
        PrimeiroFilme.Votacao();

    }
}
import java.util.Scanner;

import static java.lang.System.*;

public class Filme {
    Scanner Leitura = new Scanner(in);
    String nomeFilme;
    boolean incluidoPlano;
    int lancamentoFilme;
    double notaFilme;
    int totalNotaFilme;
    int duracaoFilmeMin;
    int votacaoFilme;

    void FichaTecnica(){
        out.println("\nNome: " + nomeFilme);
        out.println("Data de Lançamento: " + lancamentoFilme);
        out.println("Incluido no Plano: " + (incluidoPlano ? "Sim" : "Não"));
        out.println("Nota: " + (notaFilme / totalNotaFilme));
        out.println("Numero de Votaçao: " + totalNotaFilme);
        out.println("Duraçao do Filme: " + duracaoFilmeMin + " Minutos");
    }
    void Votacao(){
        for (;votacaoFilme != 2;) {
            out.println("""
                    \nOpçoes:
                    
                    1.Votar
                    2.Sair
                    """);
            votacaoFilme = Leitura.nextInt();

            switch (votacaoFilme){
                case 1:
                    out.println("Digite aqui sua Nota :");
                    notaFilme += Leitura.nextDouble();
                    totalNotaFilme++;
                    break;

                case 2:
                    out.println("Obrigado por Votar");
                    break;

                default:
                    out.println("Escolha uma Opçao Valida");
                    break;
            }
            FichaTecnica();
        }
    }
}
1 resposta

Olá, Vitor. Tudo bem?

Muito obrigado por compartilhar o seu código aqui com a gente. Parabéns pelo trabalho. Continue com essa dedicação.

Ótimo como você implementou a votação com um loop e um switch, permitindo interatividade. Um ponto importante: ao calcular a nota média, pode ocorrer uma divisão por zero caso ninguém tenha votado ainda. Para evitar isso, você pode adicionar um tratamento antes da exibição da nota.

Veja este exemplo de ajuste:


void FichaTecnica(){
    out.println("\nNome: " + nomeFilme);
    out.println("Data de Lançamento: " + lancamentoFilme);
    out.println("Incluido no Plano: " + (incluidoPlano ? "Sim" : "Não"));
    out.println("Nota: " + (totalNotaFilme > 0 ? (notaFilme / totalNotaFilme) : "Sem votos"));
    out.println("Numero de Votaçao: " + totalNotaFilme);
    out.println("Duraçao do Filme: " + duracaoFilmeMin + " Minutos");
}

Isso evita erros caso totalNotaFilme ainda seja zero.

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