Portugol

Exercício resolvido - Escreva um programa para ler as notas da 1ª e 2ª avaliações...

07/09/2013 11:03

Escreva um programa para ler as notas da 1ª e 2ª avaliações de um aluno, calcular e imprimir a média semestral. Faça com que o algoritmo só aceite notas válidas (uma nota válida deve pertencer ao intervalo [0,10]). Cada nota deve ser validada separadamente. Deve ser impressa a mensagem "Nota inválida" caso a nota informada não pertença ao intervalo [0,10].

Solução:
algoritmo "By Erick Vivan"

var
not1, not2, media : real

inicio
not1 <- -1
Enquanto (not1 < 0) ou (not1 > 10) faca
         Escreva ("Digite a primeira nota:")
         Leia (not1)
         Se (not1 < 0) ou (not1 > 10) entao
            Escreval ("Nota inválida")
         Fimse
Fimenquanto
not2 <- -1
Enquanto (not2 < 0) ou (not2 > 10) faca
         Escreva ("Digite a segunda nota:")
         Leia (not2)
         Se (not2 < 0) ou (not2 > 10) entao
            Escreval ("Nota inválida")
         Fimse
Fimenquanto
media <- (not1 + not2)/2
Escreva ("Média semestral = ", media)
fimalgoritmo

Exercício resolvido - Uma universidade tem problemas com arredondamento...

07/09/2013 01:12

Uma universidade tem problemas com arredondamento das médias dos alunos, pois cada professor estipula um critério de arredondamento. Devemos elaborar um algoritmo, para a secretaria da universidade, resolvendo esse problema. O programa deve solicitar uma nota e fazer o devido arredondamento segundo as regras a seguir:
• Nota que ultrapasse 0,5 de resto serão arredondas para CIMA. Ex: 4,6 arredonda para 5,0.
• Nota abaixo ou igual a 0,5 de resto serão arredondas para BAIXO. Ex: 4,5 arredonda para 4,0.

Solução:
algoritmo "Feito por Erick Vivan"

var
opcao, resto, mediaInteira : inteiro
media : real

inicio
      Enquanto (opcao <> 2) faca
          Escreval("1 - Iniciar programa")
          Escreval("2 - Finalizar programa")
          Escreva("Digite uma das opções: ")
          Leia(opcao)
          Escolha (opcao)
              Caso 1
                 Repita
                     Escreval("")
                     Escreva("Digite a média final do aluno: ")
                     Leia(media)
                     Se (media < 0) ou (media > 10) entao
                         Escreval("")
                         Escreval("Média inválida!")
                         Escreval("A média dever ser um valor entre 0 e 10.")
                         Escreval("")
                     Senao
                         media <- media * 10
                         mediaInteira <- int(media) //Coversão de real para inteiro
                         Escreval("")
                         resto <- mediaInteira MOD 10
                         Se (resto <= 5) entao
                             mediaInteira <- mediaInteira DIV 10 //Divisão inteira
                             Escreval("O valor arredondando da média final é: ", mediaInteira)
                             Escreval("")
                         Senao
                             mediaInteira <- mediaInteira DIV 10 + 1
                             Escreval("O valor arredondando da média final é: ", mediaInteira)
                             Escreval("")
                         Fimse
                     Fimse
                 Ate (media >= 0) ou (media <= 10)
              Caso 2
                 opcao <- 2
              Outrocaso
                 Escreval("")
                 Escreval("Opção inválida!")
                 Escreval("")
          Fimescolha
      Fimenquanto
fimalgoritmo