Ir ao conteúdo

Posts recomendados

Postado

Eu estou desenvolvendo um trabalho: um gerenciador de pacientes. Ele deve gerenciar e armazenar dados de 10 pacientes, porém ele está tendo o erro de "Esperava encontrar então" na última opção. Se não for este erro ele acaba entrando em loop e não voltando para o menu.
 

tipo
   paciente=registro
      idade       : real
      nome        : caractere
      sexo        : caractere

      cpf         : caractere
      telefone    : caractere
      endereco    : caractere

      status      : caractere
      anotacao    : caractere
      relatorio   : caractere
   fimregistro

var
   opcao                    : inteiro

   cadastro                 : vetor[1..10] de paciente
   c                        : inteiro
   i                        : inteiro

   a1,a2,a3,a4,a5           : inteiro
   pacientes                : caractere
   situacao                 : caractere
   procedimentos            : caractere
   relatorio                : caractere
   fechar                   : caractere

inicio
   repita
      escreval("cadastro de pacientes")
      escreval("1 - Pacientes      ")
      escreval("2 - Situação       ")
      escreval("3 - Procedimentos  ")
      escreval("4 - Relatórios     ")
      escreval("5 - Fechar sistema ")
      escreval("Opção: ")
      leia(opcao)
      limpatela

      se opcao="1" entao
         i<-i+1
         escreval("preencha os campos requisitados")

         escreva("nome: ")
         leia (cadastro.nome[i])

         escreva("cpf: ")
         leia (cadastro.cpf[i])

         escreva("idade: ")
         leia (cadastro.idade[i])

         escreva("sexo: ")
         leia (cadastro.sexo[i])

         escreva("telefone: ")
         leia (cadastro.telefone[i])

         escreva("endereço: ")
         leia (cadastro.endereco[i])

         leia (cadastro.anotacao[i])
         escreva("relatorio: ")
         leia (cadastro.relatorio[i])

         limpatela

         leia (cadastro.relatorio[i])
      fimse

      se opcao="2" entao
         i<-i+1
         escreval("situação do paciente: ")
         leia (situacao)
      fimse

      se opcao="3" entao
         i<-i+1
         escreval("procedimentos")
         leia (procedimentos)
      fimse

      se opcao="4" entao
         i<-i+1
         escreval("relatório")
         leia (relatorio)
      fimse

      escreval
      se op <> "5" entao
         escreva("           Tecle Enter para Voltar ao Menu")
         leia(continuar)
      senao
         escreval("    Saindo Do Programa . . . !")
      fimse
   ate op = "5"
fimAlgoritmo

 

  • Membro VIP
Postado

1.

19 horas atrás, Luiz Campos disse:
      escreval
      se op <> "5" entao
         escreva("           Tecle Enter para Voltar ao Menu")
         leia(continuar)
      senao
         escreval("    Saindo Do Programa . . . !")
      fimse

Remova esse trecho do código.

 

 

2.

19 horas atrás, kgin disse:

você não declarou às variáveis op e continuar.


Lá no ate mude de op para opcao e declare continuar com o tipo caractere.

 

@Luiz Campos, além dos ponto acima. Poste o enunciado completo da questão. O que vai ser feito código depende daqui que foi solicitado para ser feito.

 

Segue um esboço de ajustes/sugestões para poder servir de base:
 

algoritmo "Gerenciador"
const
   TAM = 10
tipo
   t_paciente = registro
      idade     :inteiro
      nome      :caractere
      sexo      :caractere
      cpf       :caractere
      telefone  :caractere
      endereco  :caractere
      status    :caractere
      anotacao  :caractere
      relatorio :caractere
   fimRegistro

var
   pacientes :vetor[1..TAM] de t_paciente
   codUltimo, codPesquisa :inteiro
   opcao     :caractere
   continuar :caractere

inicio
   codUltimo <- 0 //no VisualG não precisa, mas deixa para pegar o costume

   repita
      LimpaTela()
      escrevaL("Pacientes cadatrados: ", codUltimo)
      escreval("Cadastro de Pacientes")
      escreval("1 - Pacientes        ")
      escreval("2 - Situação         ")
      escreval("3 - Procedimentos    ")
      escreval("4 - Relatórios       ")
      escreval("5 - Fechar sistema   ")
      escreva ("Opção: ")
      leia(opcao)

      LimpaTela()

      se opcao = "1" entao
         codUltimo <- codUltimo+1
         escrevaL("## CADASTRO DE NOVOS PACIENTES ##")
         escrevaL("Preencha os campos requisitados")
         escreva ("Nome: ")
         ALEATORIO ON
         leia (pacientes.nome[codUltimo])
         escreva ("CPF: ")
         leia (pacientes.cpf[codUltimo])
         escreva ("Idade: ")
         leia (pacientes.idade[codUltimo])
         escreva ("Sexo: ")
         leia (pacientes.sexo[codUltimo])
         escreva("Telefone: ")
         leia (pacientes.telefone[codUltimo])
         escreva("Endereço: ")
         leia (pacientes.endereco[codUltimo])
         escreva("Anotação: ")
         leia (pacientes.anotacao[codUltimo])
         escreva("Relatorio: ")
         leia (pacientes.relatorio[codUltimo])
         ALEATORIO OFF
         escrevaL("")
         escreva("           Tecle Enter para Voltar ao Menu")
         leia(continuar)
         LimpaTela()
      fimSe

      se opcao = "2" entao
         escrevaL("## SITUAÇÃO DE PACIENTES ##")
         escrevaL("Preencha os campos requisitados")
         escrevaL("")
         escreva ("Código do paciente: ")
         leia(codPesquisa)
         se ((codPesquisa >= 1) E (codPesquisa <= codUltimo)) entao
            escrevaL("Situacao: ", pacientes[codPesquisa].relatorio)
         senao
            escrevaL("Código inválido")
         fimSe

         escrevaL("")
         escreva("           Tecle Enter para Voltar ao Menu")
         leia(continuar)

      fimSe

      se opcao = "3" entao
         //Em construção
      fimSe

      se opcao = "4" entao
         //Em construção
      fimSe

      se opcao = "5" entao
         escreval("    Saindo Do Programa . . . !")

         escreva("           Tecle Enter para Voltar ao Menu")
         leia(continuar)
      fimSe
   ate opcao = "5"
fimAlgoritmo


Resumo de sugestões:
- ajustar os itens 1 e 2, supracitados;

- posta o enunciado completo;

- ajustar o teu código baseando no código acima.

  • Curtir 1

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

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!