Ir ao conteúdo

Posts recomendados

Postado
Algoritmo "semnome"

Var
   gabarito: vetor [1..10] de caractere
   menuOpcao, notaFinal: inteiro

procedimento menuOpcao()
inicio
   escreval ("1- Cadastrar gabarito")
   escreval ("2- Cadastrar prova")
   escreval ("3- Sair")
   leia (menuOpcao)
fimprocedimento

procedimento cadastrarGabarito(): caractere
var
   i: inteiro
inicio
   para i de 1 ate 10 faca
      escreval ("Digite o gabarito da questão", i)
      leia (gabarito[i])
   fimpara
fimprocedimento

funcao cadastrarProva(): caractere
var
   i, nota: inteiro
   resposta: caractere
inicio
   nota <- 0
   para i de 1 ate 10 faca
      escreval ("Digite a resposta da questão", i)
      leia (resposta)
      se resposta = gabarito[i] entao
         nota <- nota + 1
      fimse
      retorne nota
   fimpara
fimfuncao

funcao verificarSituacao(): caractere
inicio
   se nota >= 7 entao
      retorne ("Aprovado")
   senao
      retorne ("Reprovado")
fimfuncao

Inicio
   repita
      menuOpcao
      escolha menuOpcao
      caso 1
         cadastrarGabarito()
      caso 2
         notaFinal <- cadastrarProva
         escreval (verificarSituacao(notaFinal))
      outrocaso
         escreval ("Opção inválida")

      ate menuOpcao = 3
Fimalgoritmo

Alguém pode me ajudar? Qualquer opção que eu clico o caso 1 é executado.

  • Obrigado 1
Postado
2 horas atrás, CaioSan disse:

Alguém pode me ajudar? Qualquer opção que eu clico o caso 1 é executado.

Você declarou a função menuOpcao com o mesmo nome da variável menuOpcao.

O visualG e meio burrinho, mas ele era pra dar erro antes mesmo de executar.

 

Tente não usar muitas variáveis globais, você poderia ter usado uma função para simplificar.

Algoritmo "semnome"

Var
   gabarito: vetor [1..10] de caractere
   menuOpcao, notaFinal: inteiro
   enter:caractere
   
funcao menuPrincipal:inteiro
var
   opcao:inteiro
inicio
   repita
      escreval("1- Cadastrar gabarito")
      escreval("2- Cadastrar prova")
      escreval("3- Sair")
      leia(opcao)
      se (opcao < 1) ou (opcao > 3) entao
         escreval("Opção invalida!")
         escreval("Pressione enter para continuar")
         leia(enter)
      fimSe
   ate não((opcao < 1) e (opcao > 3))
   retorne(opcao)
fimFuncao

procedimento cadastrarGabarito(): caractere
var
   i: inteiro

inicio
   para i de 1 ate 10 faca
      escreval ("Digite o gabarito da questão", i)
      leia (gabarito[i])
   fimpara
fimprocedimento

funcao cadastrarProva(): caractere
var
   i, nota: inteiro
   resposta: caractere
inicio
   nota <- 0
   para i de 1 ate 10 faca
      escreval ("Digite a resposta da questão", i)
      leia (resposta)
      se resposta = gabarito[i] entao
         nota <- nota + 1
      fimse
      retorne nota
   fimpara
fimfuncao

funcao verificarSituacao(): caractere
inicio
   se nota >= 7 entao
      retorne ("Aprovado")
   senao
      retorne ("Reprovado")
fimfuncao

Inicio
   repita
      menuOpcao <- menuPrincipal
      escolha menuPrincipal
      caso 1
         cadastrarGabarito()
      caso 2
         notaFinal <- cadastrarProva
         escreval (verificarSituacao(notaFinal))
      outrocaso
         escreval ("Opção inválida")

   ate menuOpcao = 3

Fimalgoritmo

 

  • Curtir 2

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

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...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!