Ir ao conteúdo
  • Cadastre-se

Recomeçar program do zero se a media der acima de 10 no visualg


Posts recomendados

algoritmo "exer 6"
var
n1,n2,n3,n4,media,erro:real
quatalunos,i:inteiro
nome:caracter

inicio

escreval (" o numero de alunos ")
leia (quatalunos)
      enquanto (i<=quatalunos) faca
      i<-i+1
          escreval (" o nome do aluno: ")
           leia (nome)
           escreval (" digite nota 1: ")
           leia (n1)
           escreval (" digite nota 2: ")
           leia (n2)
           escreval (" digite nota 3: ")
           leia (n3)
           escreval (" digite nota 4: ")
           leia (n4)
           media<-(n1+n2+n3+n4)/4
      se (media>=6) e  (media<=10) então
      escreval ("o aluno ",nome," teve media de  :",media," e está aprovado")
      senao
        se (media<6) e (media>=5)então
        escreval ("o aluno ",nome," teve media de  :",media," e está em recuperação")
        senao
        escreval ("o aluno ",nome," teve media de  :",media," e está reprovado")
          se (media > 10) então
          escreval (media," media inválida digite novamente")
   fimse
  fimse
 fimse
  fimenquanto
fimalgoritmo

 

 

 

se a media der acima de 10 ele tem que começar do zero

mas tentei varias formas e não consegui se tiver alguém pra dar uma luz agradeço.

att: Alexsandro 

Link para o comentário
Compartilhar em outros sites

alexsandroams

coloque mais uma variável por exemplo x do tipo inteiro, e  no começo logo depois de leia (quatalunos) inicialize a variável i fazendo i <- 1
      E depois do enquanto coloque um repita, e em seguida inicialize as variáveis assim:

n1 := 0
n2 := 0
n3 := 0
n4 := 0
media := 0
nome := ""
x := 1

e coloque um se depois de media<-(n1+n2+n3+n4)/4 assim:

se ( media < 0 ) ou ( media > 10 ) então
  x := 2
fimse

e lá em baixo uma linha antes do fimenquanto coloque assim:

ate x = 1

e no lugar desses dois senao coloque fimse ; e deleta esses dois fimse que está aí no
final, e coloque esse escreval ("o aluno ",nome," teve media de  :",media," e está reprovado")
dentro de um se fimse
assim :

se media < 5 então
  escreval ("o aluno ",nome," teve media de  :",media," e está reprovado")
fimse

e dentro desse se (media>10)   , coloque assim :

i := i-1

desse jeito ele vai repetir, o mesmo aluno, se a media for maior que 10 

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...