Considerando o programa Java abaixo, o que será mostrado apó...
Considerando o programa Java abaixo, o que será mostrado após a execução com a entrada dos números 3, 5 e 2, nesta sequência?
public class JavaApplication46 {
public static void main(String[] args) {
double A, B, C, MEDIA;
java.util.Scanner Input = new java.util.Scanner(System.in);
A = Input.nextDouble();
B = Input.nextDouble();
C = Input.nextDouble();
MEDIA = A + B + C / 10;
System.out.printf("MEDIA = %.1f\n", MEDIA);
}
}
Escolha a alternativa CORRETA.
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
Alternativa Correta: C - MEDIA = 8.2
Vamos analisar o código fornecido e compreender a lógica por trás da questão.
O programa Java realiza a leitura de três números do teclado e calcula uma média com base nesses números. A estrutura do código é a seguinte:
1. Declaração das variáveis A, B, C, e MEDIA.
2. Criação do objeto Scanner para a leitura dos valores de entrada.
3. Leitura de três números de entrada e atribuição a A, B e C.
4. Cálculo da média:
MEDIA = A + B + C / 10;
❗ Nota: A operação de divisão tem precedência sobre a soma. Portanto, C / 10 será calculado primeiro.
Como os números de entrada são 3, 5 e 2, a expressão será avaliada da seguinte forma:
MEDIA = 3 + 5 + (2 / 10)
➔ 2 / 10 = 0.2
➔ MEDIA = 3 + 5 + 0.2
➔ MEDIA = 8.2
Portanto, o valor calculado para MEDIA é 8.2, conforme a alternativa correta C.
Por que as outras alternativas estão incorretas?
A - MEDIA = 1
Essa alternativa está incorreta porque o valor calculado de MEDIA não resulta em 1. Há um erro na interpretação dos cálculos.
B - MEDIA = 5
Essa alternativa está incorreta. O valor de MEDIA não é 5, pois a adição dos valores 3, 5 e 0.2 resulta em 8.2, não em 5.
D - MEDIA = 2
Essa alternativa está incorreta. O cálculo correto da média não produziria o valor 2.
E - MEDIA = 10
Essa alternativa está incorreta. É um valor inviável dado os valores de entrada e o cálculo realizado.
Resumo:
Ao resolver questões como essa, é importante prestar atenção à precedência de operadores e seguir passo a passo a lógica do programa. Ao dominar esses conceitos, você estará mais preparado para resolver questões similares em concursos públicos.
Continue praticando e revisando esses conceitos fundamentais!
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo
Comentários
Veja os comentários dos nossos alunos
Como não tem um parênteses, ele faz a divisão e depois soma
## Análise detalhada do código Java para cálculo de média
Este código Java calcula a média de três valores decimais inseridos pelo usuário e imprime o resultado com uma casa decimal. Vamos analisar cada parte do código:
**1. Declaração da classe:**
* `public class JavaApplication46 { ... }`
* Declara uma classe pública chamada `JavaApplication46`. Classes em Java servem como blocos de construção para organizar código.
**2. Método principal (`main`):**
* `public static void main(String[] args) { ... }`
* Define o método `main`, que é o ponto de entrada da aplicação. O código dentro deste método será executado quando você rodar o programa.
**3. Declaração de variáveis:**
* `double A, B, C, MEDIA;`
* Declara quatro variáveis do tipo `double`: `A`, `B`, `C` e `MEDIA`. Variáveis `double` armazenam números de ponto flutuante (decimais).
**4. Criando um Scanner:**
* `java.util.Scanner Input = new java.util.Scanner(System.in);`
* Cria um objeto `Scanner` chamado `Input` e o inicializa para ler a entrada do usuário através do `System.in`. A classe `Scanner` da biblioteca `java.util` é usada para ler dados inseridos pelo usuário.
**5. Lendo valores do usuário:**
* `A = Input.nextDouble();`
* `Input.nextDouble();` lê o próximo número decimal digitado pelo usuário e o armazena na variável `A`.
* Este processo se repete para `B` e `C`.
**6. Cálculo da média (erro corrigido):**
* `MEDIA = (A + B + C) / 3.0;` (corrigido de / 10)
* Calcula a média aritmética dos valores em `A`, `B`, e `C`.
* Ocorre um erro na linha original, pois a divisão por 10 daria um resultado decimal incorreto. Corrigimos para dividir por 3.0 (valor decimal) para obter a média correta.
**7. Formatação de saída:**
* `System.out.printf("MEDIA = %.1f\n", MEDIA);`
* Utiliza o método `printf` da classe `System.out` para imprimir uma mensagem formatada.
* `"MEDIA = %.1f\n"` define o formato da saída: "MEDIA = " seguido pelo valor de `MEDIA` com uma casa decimal (`%.1f`) e um caractere de nova linha (`\n`).
* O valor da variável `MEDIA` é fornecido como segundo argumento para substituir `%.1f` no formato da string.
**Resumo:**
Este código lê três valores decimais do usuário, calcula a média aritmética desses valores e imprime o resultado formatado com uma casa decimal. O erro na divisão por 10 foi corrigido para realizar o cálculo da média corretamente.
Fonte: Gemini
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo