Fazer um programa para:
receber 3 notas parciais do aluno em um vetor e a nota do exame em uma variável separada (-1 se o aluno não fez exame).

Passo 1

Beleza, o enunciado tá pedindo que a gente escreva um programa que:
  1. Leia 3 notas parciais de um aluno (num vetor)
  2. Leia a nota do exame separadamente (ou -1 se o aluno NÃO fez exame)
  3. A partir disso, decida se o aluno está aprovado, reprovado ou se passou por exame, e mostre as médias.
Conteúdo/matéria:
  • Uso de vetor (array) para armazenar várias notas.
  • Laços para somar elementos do vetor.
  • Cálculo de média aritmética.
  • Estruturas condicionais (if/else) para decidir o resultado.
O que vamos precisar:
  • Um vetor de tamanho 3 para as notas.
  • Uma variável para nota do exame.
  • Saber calcular média: M = n1 + n2 + n33
    - Saber comparar médias para aprovação, reprovação ou exame.

Passo 2

Primeiro a gente lê as 3 notas e armazena num vetor. Depois, lê a nota do exame (ou -1). Em pseudo-código fica assim:
para i de 1 até 3:  
    leia(notas[i])     // notas é um vetor de tamanho 3  
leia(nota_exame)      // pode ser -1  
Explicando: vetor (array) é uma estrutura que guarda várias variáveis do mesmo tipo. Aqui usamos para não ter 3 variáveis soltas.

Passo 3

Agora vamos calcular a média parcial das 3 notas. A fórmula da média aritmética simples é:
M = n1 + n2 + n33
Em código:
soma = notas[1] + notas[2] + notas[3] M = soma / 3.0
A gente faz 3.0 pra garantir divisão real.

Passo 4

Checa se o aluno dispensa exame (Média ≥ 7) ou é reprovado direto (Média < 3) sem nem precisar de exame:
se M ≥ 7.0 e nota_exame = -1 então  
    // Aprovado direto  
senao se M < 3.0 e nota_exame = -1 então  
    // Reprovado direto  
Por que 7 e 3? É uma regra que a gente está adotando:
  • ≥7 passa direto.
  • ❤️ reprova direto.
  • Entre 3 e 7 precisa de exame.

Passo 5

Se o aluno ficou entre 3.0 e 7.0, ele precisa ter feito exame. Se nota_exame = -1, a gente considera reprovação por não ter ido. Se fez exame, calcula a média final:
Mf = M + notaexame2
Depois usa outro if:
senao se M ≥ 3.0 e M < 7.0 então se nota_exame = -1 então // Reprovado por não ter comparecido ao exame senao Mf = (M + nota_exame) / 2.0 se Mf ≥ 5.0 então // Aprovado em exame senao // Reprovado em exame
Aqui a regra é: no exame, média final ≥5 passa, senão reprova.

Resposta

Em resumo, o programa deve:
  1. Ler vetor notas[3] e nota_exame.
  2. Calcular M = notas[1] + notas[2] + notas[3]3
    3) Se M ≥ 7.0 e nota_exame = -1: aluno aprovado direto com média M.
    4) Se M < 3.0 e nota_exame = -1: aluno reprovado direto com média M.
    5) Se 3.0 ≤ M < 7.0:
    - Se nota_exame = -1: reprovado por não ter feito exame (média parcial M).
    - Se nota_exame ≠ -1: calcular Mf = M + notaexame2
    • Se M_f ≥ 5.0: aprovado em exame com média final M_f.
    • Senão: reprovado em exame com média final M_f.
Pronto! Esse fluxo cobre todos os casos usando vetor, média, e if/else.

Exercícios relacionados