Você está aqui: VisuAlg ::: Desafios e Lista de Exercícios Resolvidos ::: Estruturas de Controle |
Escreva um programa VisuAlg para ler as notas n1 e n2 de um aluno e calcule a sua média aritmética - Desafio de Programação Resolvido em VisuAlgQuantidade de visualizações: 335 vezes |
Pergunta/Tarefa: Escreva um programa VisuAlg para ler as notas n1 e n2 de um aluno e calcule a sua média aritmética. Se a média for igual ou superior a 7,0 mostre uma mensagem indicando que o aluno foi aprovado. Se a média for igual ou maior que 3,5 e inferior a 7,0 seu programa deverá indicar que o aluno ficou de exame. Uma média menor que 3,5 indica reprovação direta. No caso do exame, leia uma nota entre 0 e 10. Agora a média do aluno deverá ser a média entre a média anterior e a nota do exame. Se a nova média for igual ou superior a 5,0 o aluno estará aprovado. Caso contrário o aluno será reprovado. Use validação para evitar que o usuário informe notas inválidas, ou seja, notas menores que 0 ou maiores que 10. Caso notas inválidas sejam fornecidas seu programa deverá solicitar a nota novamente até que o usuário forneça notas válidas. Sua saída deverá ser parecida com: Informe a nota N1: 9.4 Informe a nota N2: 11 Nota inválida. Informe a nota N2: 8.3 A média do aluno é: 8.85 O aluno foi aprovado Informe a nota N1: 4.2 Informe a nota N2: 1.8 A média do aluno é: 3.0 O aluno reprovou direto. Informe a nota N1: 5.7 Informe a nota N2: 6 A média do aluno é: 5.85 Informe a nota do exame: 7 A média do aluno com o exame é: 6.425 O aluno foi aprovado após o exame. Veja a resolução comentada deste exercício usando VisuAlg: algoritmo "Como calcular a média de um aluno em VisuAlg" var // variáveis usadas na resolução do problema n1, n2, media, exame: real inicio // vamos ler a primeira nota escreva("Informe a nota N1: ") leia(n1) // a nota é válida? enquanto ((n1 < 0) ou (n1 > 10)) faca escreva("Nota inválida. Informe a nota N1: ") leia(n1) fimenquanto // vamos ler a segunda nota escreva("Informe a nota N2: ") leia(n2) // a nota é válida? enquanto ((n2 < 0) ou (n2 > 10)) faca escreva("Nota inválida. Informe a nota N2: ") leia(n2) fimenquanto // vamos calcular a média do aluno media <- (n1 + n2) / 2.0 escreval("A média do aluno é: ", media) // o aluno foi aprovado? se (media >= 7.0) entao escreval("O aluno foi aprovado") // o aluno ficou de exame? senao se ((media >= 3.5) e (media < 7.0)) entao // vamos ler a nota do exame escreva("Informe a nota do exame: ") leia(exame) // a nota é válida? enquanto ((exame < 0) ou (exame > 10)) faca escreva("Nota inválida. Informe a nota do exame: ") leia(exame) fimenquanto // calcula a nota média media <- (media + exame) / 2.0 escreval("A média do aluno com o exame é: ", media) // o aluno foi aprovado após o exame? se (media >= 5.0) entao escreval("O aluno foi aprovado após o exame.") senao escreval("O aluno foi reprovado após o exame.") fimse senao escreval("O aluno reprovou direto.") fimse fimse fimalgoritmo |
![]() |
Mais Desafios de Programação e Exercícios e Algoritmos Resolvidos de VisuAlg |
Veja mais Dicas e truques de VisuAlg |
Dicas e truques de outras linguagens |
Ruby - Como inserir uma substring em uma determinada posição de uma string em Ruby usando a função insert() Python - Como definir o texto de um wx.Button do wxPython em tempo de execução usando a função SetLabel() |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |