Escreva um algoritmo que leia as notas dos alunos de uma turma e calcule a média final de cada um dos
alunos e quantos foram aprovados. O algoritmo somente deve ler a nota AP3 se for necessário, caso
contrário o algoritmo lê apenas quatro notas AD1, AP1, AD2 e AP2.
1. O aluno faz as avaliações: AD1 e AP1, AD2 e AP2.
2. Com a AD1 e AP1 calcula-se a média N1 = (2 x AD1 + 8 x AP1) / 10.0.
3. Com a AD2 e AP2 calcula-se a média N2 = (2 x AD2 + 8 x AP2) / 10.0.
4. Com as médias N1 e N2 calcula-se a média N = (N1 + N2) /2.
5. Se N ≥ 6 o aluno está aprovado e esta é sua NOTA FINAL.
6. Se N < 6, o aluno faz a AP3 (avaliação presencial com toda a matéria).
7. Caso o aluno tenha que realizar a AP3: Se a média aritmética entre a AP3 e a maior das notas N1 ou
N2 for ≥ 5 o aluno está aprovado e esta é sua NOTA FINAL.
8. Se a média aritmética entre a AP3 e a maior das notas N1 ou N2 for < 5 o aluno está reprovado e esta
é sua NOTA FINAL.
9. Observações: Não há reposição (2ª chamada) de nenhuma AP, portanto a AP3 não substitui nem a
AP1, nem a AP2. A AP3 não pode ser feita para melhorar a média, portanto os alunos que já estão
aprovados com média N ≥ 6 não têm o direito de fazer a AP3.
Soluções para a tarefa
Resposta:
Programa media
var
ad1, ad2, ap1, ap2, ap3, N1, N2: real
media, mediafinal: real
cont, num_alunos: inteiro
nome: caracter
inicio
escreva("Media")
escreva("Quantidade de alunos: ")
leia(num_alunos)
para cont=1 até cont <= num_alunos faça
escreva("Nome do Aluno")
leia(nome)
escreva("Nota 1")
leia(ad1)
escreva("Nota 2")
leia(ap1)
escreva("Nota 3")
leia(ad2)
escreva("Nota 4")
leia(ap2)
N1=(ap1+(8*ad1))/10
N2=(ap1+(8*ad1))/10
media=(N1+N2)/2
se media >=6 então
escreva("Aluno aprovado com a nota final: ", media)
senão
escreva("Nota Recuperação: ")
leia(ap3)
se N1 > N2 então
mediafinal=(N1+ap3)/2
senão
mediafinal=(N2+ap3)/2
fim-se
se mediafinal >=6 então
escreva("Aluno aprovado com a nota final: ", mediafinal)
senão
escreva("Reprovado")
fim-se
fim-se
fim-para
fim
Resposta:
Algoritmo "semnome"
Var
i, quantidadeAlunos, alunosAprovados : inteiro
ad1, ap1, ad2, ap2, ap3, n, n1, n2 : real
Inicio
escreva("Escreva a quantidade de alunos : ")
leia(quantidadeAlunos)
para i de 1 ate quantidadeAlunos faca
//Média N1 < INICIO >
escreva("Digite a Nota AD1 do ",i,"° Aluno : ")
leia(ad1)
escreva("Digite a Nota AP1 do ",i,"° Aluno : ")
leia(ap1)
n1 <- (2 * AD1 + 8 * AP1) / 10
escreval("|------------------|")
escreval("| A Média N1 é ",n1)
escreval("|------------------|")
//Média N1 < FIM >
//Média N2 < INICIO >
escreva("Digite a Nota AD2 do ",i,"° Aluno : ")
leia(ad2)
escreva("Digite a Nota AP2 do ",i,"° Aluno : ")
leia(ap2)
n2 <- (2 * AD2 + 8 * AP2) / 10
escreval("|------------------|")
escreval("| A Média N2 é ",n2)
escreval("|------------------|")
//Média N2 < FIM >
escreval("") // Dar um espaço
//Média N < INICIO >
N <- (n1 + n2) / 2
escreval("|------------------|")
escreval("| A Média N é ",n)
escreval("|------------------|")
//Média N < FIM >
escreval("") // Dar um espaço
se (n >= 6) entao
escreval("|------------------|")
escreval("| APROVADO! |")
escreval("|------------------|")
fimse
se (n < 6) entao
escreval("|------------------|")
escreval("| AP3 NECESSÁRIO |")
escreval("|------------------|")
escreval("") // Dar um espaço
escreva("Digite a Nota AP3 do ",i,"° Aluno : ")
leia(ap3)
se (ad1 > ad2) entao
n1 <- (2 * AD1 + 8 * AP3) / 10
n <- (n1 + n2) / 2
escreval("|------------------|")
escreval("| N1 = (2 x AD1 + 8 x AP3) / 10")
escreval("| A Média N é ",n)
escreval("|------------------|")
fimse
se (ad2 > ad1) entao
n2 <- (2 * AD2 + 8 * AP3) / 10
n <- (n1 + n2) / 2
escreval("|------------------|")
escreval("| N2 = (2 x AD2 + 8 x AP2) / 10 ")
escreval("| A Média N é ",n)
escreval("|------------------|")
fimse
fimse
se (n >= 6) entao
alunosAprovados <- (alunosAprovados + 1)
fimse
fimpara
escreval("")
escreval("A Quantidade de Alunos Aprovados é : ",alunosAprovados)
Fimalgoritmo