Jump to content
anderdl18

[VisualG]Esperava encontrar "entao" e "fimse" mesmo eles estando na linha do código

Recommended Posts

Bom pessoal, estou desenvolvendo um programa em VisualG para uma atividade da Faculdade, que apresente um menu de opções e que permita ao usuário escolher a opção desejada, receba os dados necessários para executar a operação e mostre o resultado. Verificar a possibilidade de opção inválida e não se preocupar com as restrições, como salário inválido. Porém ao executar o mesmo apresenta o erro de "Esperava encontrar entao" e "fimse".

algoritmo "semnome"

var
op: caracter
sal, nsal,: real
meses: inteiro
inicio
// Seção de Comandos
escreva ("Informe o salário R$: ")
leia (sal)
limpatela
   escreval("      MENU       ")
   escreval("1. Novo salário")
   escreval("2. Férias   ")
   escreval("3. Décimo Terceiro")
   escreval("4. Sair        ")
   escreval("                 ")
   escreva ("Informe a operação: ")
   leia (op)
   limpatela
   escolha op
   enquanto op <> 4 faca
   caso "1"
   escreva ("O salário do funcionário é R$:", sal, "reais.")
   se sal <= 350  entao
   escreva ("O novo salário será R$: ", sal*0.15, "reais")
   fimse
   se sal = 350 e <= 600 entao
   escreva ("O novo salário será R$: ", sal*0.10, "reais")
   fimse
   se sal > 600 entao
   escreva ("O novo salário será R$: ", sal*0.05, "reais")
   fimse
   caso "2"
   escreva ("O salário acrescido de férias será R$ :" (sal+(sal*0.3)))
   caso "3"
   escreva ("Informe os meses trabalhados")
   leia (meses)
   escreva ("O seu décimo terceiro será RS: " (sal+(sal*meses)/12))
   caso "4"
   escreva ("Encerrar execução")
   outrocaso
   ("Opção inexistente")
   
	fimescolha
	
	fimenquanto

fimalgoritmo

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By 4ly
      O exercício propunha fazer duas funções uma para multiplicação e outra para criar uma fatorial, porém devem ser feitas usando apenas operações de soma e subtração
      bom fiz uma função para multiplicar e esta funcionando porém estou tentando utiliza-la para fazer a fatorial e o resultado sempre da zero ;-; podem me ajudar 
       
       
      algoritmo "semnome" var a,b:inteiro funcao multi(a:inteiro;b:inteiro):real var aux:real inicio se a=0 entao retorne 0 senao aux <- 0 enquanto b>0 faca aux <- aux+a b <- b-1 fimenquanto retorne aux fimse fimfuncao funcao fatorial(a:inteiro):real var fat,res:real inicio enquanto fat > 0 faca fat<-a fat <- fat - 1 res <- multi(fat,a) fimenquanto retorne res fimfuncao inicio leia(a) escreval(fatorial(a)) fimalgoritmo  
    • By ludlima
      Boa noite,estou tentando executar um algoritmo no visualg que leia 100 números,descubra se existe números primos,se sim mostrar em que posição se encontra. Entretanto,o programa só está executando até onde mostra o vetor. Gostaria de ajuda de como terminar e realizar a verificação do número primo.
      Var
        num, cont, divisor: inteiro
        VET: vetor[0..99] de inteiro

      Inicio
         escreval ("Olá!Você quer saber se existe número primo? ")
         Para num <- 0 ate 99 faca
            Escreva("Digite o ", num, "o. valor: ")
            Leia(VET[num])
         FimPara
      LimpaTela
         escreva ("Vetor: ")
         para num <- 0 ate 99 faca
            escreva (VET[num])
         fimpara
         escreval ("")
         
      cont <- 0
      divisor <- 1
         Para num <- 0 ate 99 faca
      cont <- cont + 1
      divisor <- divisor + 1
         se (divisor <= num)e(num mod divisor = 0)e (cont = 2) entao
         EscrevaL("Valor", VET[num], " na posicao [",num, "] é Primo!")
      fimse
      fimpara

      Fimalgoritmo
    • By Svinnicius
      Ao sair de um procedimento e entrar em outro, ta apresentando erro quando tento finalizar o programa.
       
      Var
      // Seção de Declarações das variáveis 
      nome: vetor [1..3]  de caractere
      telef: vetor [1..3]  de caractere
      ema: vetor [1..3]  de caractere
      codigo,codigo_contato,codigo_contato_cheio, menu_apagar,opc, opc1: inteiro
      cont, menu_mostrar,op: inteiro
      procedimento principal()
      Inicio
      // Seção de Comandos, procedimento, funções, operadores, etc... 
      repita
      escreval ("")
      escreval ("=== AGENDA TELEFÔNICA ===")
      escreval ("")
      escreval ("1. Inserir novo contato")
      escreval ("2. Apagar contato")
      escreval ("3. Mostrar todos os contatos")
      escreval ("4. Sair")
      escreva ("Digite opcao: ")
      leia (codigo)
      limpatela
      ate (codigo=1) ou (codigo=2) ou (codigo=3) ou (codigo=4)
      escolha (codigo)
      caso 1
         contato()
      caso 2
         apagar()
      caso 3
         mostrar()
      caso 4
         interrompa
      fimescolha
      fimprocedimento
      //---------------------- NOVO CONTATO ----------------------
      procedimento contato()
      inicio
      para cont de 1 ate 3 faca
      limpatela
      escreval("== INSERIR NOVO CONTATO ==")
            escreva ("Nome: ")
            leia (nome[cont])
            escreva ("Telefone: ")
            leia (telef[cont])
            escreva ("E-mail: ")
            leia (ema[cont])
            escreval("")
            escreval("Usuario cadrastrado com sucesso")
            repita
            escreval("")
            escreval("1.Insira novo contato")
            escreval("2.Voltar ao menu")
            escreval("")
            escreva("Digite opção: ")
            leia(codigo_contato)
      escolha (codigo_contato)
      caso 1
      escreva("")
      caso 2
         interrompa
         limpatela
         principal()
      outrocaso
      escreval("")
      escreval("Opção invalida")
      escreval("")
      escreval("Pressione ENTER para voltar")
      leia(op)
      limpatela
      fimescolha
      ate codigo_contato = 1
      fimpara
      limpatela
                escreval("")
                escreval("Lista de contato cheia")
                repita
                escreval("")
                escreval("1.Voltar ao menu")
                escreval("2.Sair")
                escreval("")
                escreval("Digite opção")
                leia(codigo_contato_cheio)
          escolha (codigo_contato_cheio)
                caso 1
                limpatela
                principal()
                caso 2
                interrompa
                outrocaso
      escreval("")
      escreval("Opção invalida")
      escreval("")
      escreval("Pressione ENTER para voltar")
      leia(op)
      limpatela
      fimescolha
      ate codigo_contato_cheio = 1
      fimprocedimento

      //------------------------ Apagar contato------------------------------------
      procedimento apagar()
      inicio
      limpatela
      escreval("== APAGAR CONTATO ==")
      Escreval("")
      escreva ("Qual contato você quer apagar? ")
      Escreval("")
      para cont de 1 ate 3 faca
      Escreval(cont,". ",nome[cont])
      fimpara
      Escreval("")
      Escreva("Digite opção:")
      Leia(opc)
      se opc >0 entao
         se opc <4 entao
      nome[opc]<-""
      telef[opc]<-""
      ema[opc]<-""
      Escreval("")
      Escreval("Contato Apagado com sucesso")
      repita
      escreval("")
      escreval("1.Apagar outro contato")
      escreval("2.Voltar ao menu")
      escreval("3.Sair")
      escreva("Digite opção:")
      leia(menu_apagar)
      Escolha(menu_apagar)
      caso 1
      limpatela
      apagar()
      caso 2
      limpatela
      principal()
      caso3
      interrompa
      outrocaso
      escreval("")
      escreval("Opção invalida")
      escreval("")
      escreval("Pressione ENTER para voltar")
      leia(op)
      senao
      apagar()
      fimse
      fimse
      fimse
      fimescolha
      ate menu_apagar = 3
      fimprocedimento
      //-------------------------- Mostrar todos os contatos ---------------------
      procedimento mostrar()
      inicio
      limpatela
      escreval("== LISTA DE CONTATOS ==")
      Escreval("")
      para cont de 1 ate 3 faca
      Escreval(cont,". ",nome[cont])
      fimpara
      Escreval("")
      Escreva("Digite opção:")
      Leia(opc1)
      se opc1 >0 entao
         se opc1 <4 entao
      limpatela
      Escreval("Nome: ",nome[opc1])
      Escreval("Telefone: ",telef[opc1])
      Escreval("E-mail: ",ema[opc1])
      repita
      escreval("")
      escreval("1.Mostrar outro contato")
      escreval("2.Voltar ao menu")
      escreval("")
      escreva("Digite opção:")
      Leia(menu_mostrar)
      Escolha(menu_mostrar)
      caso 1
      limpatela
      mostrar()
      caso 2
      limpatela
      principal()
      outrocaso
      escreval("")
      escreval("Opção invalida")
      escreval("")
      escreval("Pressione ENTER para voltar")
      leia(op)
      senao
      mostrar()
      fimse
      fimse
      fimescolha
      limpatela
      ate menu_mostrar = 1
      fimprocedimento
      inicio
      // Seção de Comandos
        principal()
      Fimalgoritmo
    • By ludlima
      Boa noite,estou tentando fazer um algoritmo que leia 50 números e mostre em ordem crescente e decrescente ao usuário,preciso utilizar vetor. Até agora só conseguir fazer a parte crescente. Alguém tem alguma dica de como fazer a parte decrescente?
       
      Var
      CONTADORA, CONTADORB: inteiro
      NUM, AUX: inteiro
      VET: vetor[0..49] de inteiro
      Inicio
         para CONTADORA de 0 ate 49 faca
         escreval ("Digite um número")
         leia (NUM)
         VET[CONTADORA] <- NUM
      fimpara
      para CONTADORA de 0 ate 48 faca
         para CONTADORB de CONTADORA + 1 ate 49 faca
            se VET[CONTADORA] > VET[CONTADORB] entao
               AUX <-VET[CONTADORB]
               VET[CONTADORB] <- VET[CONTADORA]
               VET[CONTADORA] <- AUX
            fimse
         fimpara
      fimpara
      escreval("A ordem crescente dos números é: ")
      para CONTADORA de 0 ate 49 faca
         escreva(VET[CONTADORA])
      fimpara
      Fimalgoritmo
       
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.