Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Dúvida] Código Alternativo

Olá!

Eu fiz o código de uma maneira alternativa e gostaria de saber quais das duas formas é melhor ou mais utilizada, e qual forma devo fazer daqui para frente.

O código abaixo foi feito por vocês no vídeo:

import java.util.Scanner;

public class Loop {
    public static void main(String[] args) {
        Scanner leitura = new Scanner(System.in);
        double mediaAvaliacao = 0;
        double nota = 0;

        for (int i = 0; i < 3; i++) {
            System.out.println("Diga sua avaliação para o filme  ");
            nota = leitura.nextDouble();
            mediaAvaliacao += nota;
        }

        System.out.println("Média de avaliações " + mediaAvaliacao/3);

        }
    } 

O código abaixo foi feito por mim:

import java.util.Scanner;

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

        double mediaAvalicaoes = 0;
        double nota = 0;

        for (int i = 0; i < 3; i++) {
            System.out.println("Digite a nota do filme: ");
            nota = nota + leitor.nextDouble();
        }

        mediaAvalicaoes = nota / 3;
        
        System.out.printf("A média de avaliações é de %.1f", mediaAvalicaoes);
        }
    }
1 resposta
solução!

Oi, Isabela! Tudo bem?

Que legal que você está explorando diferentes maneiras de escrever seu código! Ambos fazem essencialmente a mesma coisa: pedem três avaliações de filmes, calculam a média e a exibem, a diferença principal está na forma como a média é calculada e exibida, o que podemos abordar com os seguintes tópicos:

  1. Acumulação de Notas:

    • No código do vídeo, a variável mediaAvaliacao é usada para acumular as notas dentro do loop usando +=, que é uma maneira comum e legível de somar valores a uma variável existente.
    • No seu código, você acumula diretamente na variável nota, o que é igualmente válido, mas pode ser menos intuitivo para quem lê o código, já que nota geralmente representa uma única avaliação.
  2. Cálculo da Média:

    • No código do vídeo, a média é calculada diretamente na impressão (mediaAvaliacao/3).
    • No seu código, você calcula a média antes de imprimir, o que pode ser mais claro para quem está revisando o código, pois separa claramente a lógica de cálculo da lógica de exibição.
  3. Exibição dos Resultados:

    • O uso de System.out.printf no seu código é uma boa prática quando se quer formatar a saída, como limitar o número de casas decimais.

Ambos os métodos são válidos, mas a escolha entre eles pode depender do contexto e da preferência pessoal. Se você está buscando clareza e facilidade de manutenção, a abordagem de calcular a média antes de imprimir e usar printf para formatação pode ser mais vantajosa.

Espero ter ajudado!

Um forte abraço e bons estudos!