Um curso de Sistemas de Informação calcula o conceito dos alunos da turma de Programação da seguinte forma:
- Insuficiente: Aqueles com Médias inferiores a 5,0;
- Regular: Aqueles com Médias variando de 5,0 a 6,9;
- Bom: Aqueles com Médias variando de 7,0 a 8,9;
- Excelente: Aqueles com Médias entre 9,0 e 10,0; inclusive.
Um professor da disciplina avaliou sua turma em 3 momentos diferentes, aplicando provas com notas de 0 (zero) a 10,0. A média final do aluno é calculada através da média aritmética das 3 avaliações.
Observa-se ainda que, após 60 horas de aula, o aluno é considerado aprovado se sua frequência for maior que 75% e o seu conceito não for Insuficiente.
Faça um algoritmo que permita a digitação dos nomes, suas respectivas notas nas 3 avaliações e número de faltas; e que ao serem digitados os dados de cada aluno seja informado o conceito e a frequência do mesmo. Após a digitação dos dados do último aluno, o algoritmo deverá informar a quantidade de alunos reprovados, a quantidade de alunos com conceito Excelente, e a média geral da turma.
Como não foi especificado o número de alunos da turma, o algoritmo deverá solicitar dados enquanto o nome do aluno digitado seja diferente de "FIM".
__________________________________
Uma solução possível usando codificação para Visualg. Para efeito de avaliação serão considerados os seguintes elementos:
- Laço de controle de leituras e processamento.
- Leitura de dados dos alunos.
- Calculo das médias e frequência.
- Calculo dos conceitos, número de alunos reprovados e com conceito excelente.
- Controle da saída dos dados pós leituras.
var ...nome: literal...nota1, nota2, nota3: real...faltas, nrAlunos, nrReprovados, nrExcelentes: inteiro...media, frequencia, mediaGeral: realinicio...mediaGeral <- 0...nrAlunos <- 0...nrReprovados <- 0...nrExcelentes <- 0...leia nome...enquanto nome <> "fim" faca......leia nota1......leia nota2......leia nota3......leia faltas......media <- ( nota1 + nota2 + nota3 ) / 3......frequencia <- ( 60 - faltas ) / 60 * 100......mediaGeral <- mediaGeral + media......nrAlunos <- nrAlunos + 1......se media < 5 entao
.........escreva "Reprovado"
......nrReprovados <- nrReprovados + 1
......senao
.........se frequencia > 75 entao
............se media < 7 entao
...............escreva "Regular"
............senao
...............se media < 9 entao
..................escreva "Bom"
...............senao
..................escreva "Excelente"
...............fimse
............fimse
.........senao
............escreva "Reprovado por Falta"
.........fimse
.........se media >= 9 entao
............nrExcelentes <- nrExcelentes + 1
.........fimse
......fimse
......leia nome
...fimenquanto
...se nrAlunos <> 0 entao
......escreva "Media Geral: ", mediaGeral / nrAlunos
......escreva "Nr de Reprovados: ", nrReprovados
......escreva "Nr de Excelentes: ", nrExcelentes
...senao
......escreva "Inserir Pelo Menos os Dados de 1 Aluno"
...fimse
fimalgoritmo