Ir ao conteúdo

VisualG calculadora algoritmo fat dando erro de sintaxe


Ir à solução Resolvido por Simon Viegas,

Posts recomendados

Postado

o que esta de  errado no FAT? ja vi e mudei varias vezes e nada

 

Algoritmo "Calculadora"

Var
   // Seção de Declarações das variáveis
   operacao, i: inteiro
   a, b, resultado, N, FAT,: real
   Sair : logico

Inicio

   repita

      escreval("Escolha o número de uma operação: ") //Pede ao usuário que escolha uma das operações
      escreval("    1.- Soma")
      escreval("    2.- Subtração")
      escreval("    3.- Multiplicação")
      escreval("    4.- Divisão")
      escreval("    5.- Fatorial")
      escreval("    6.- Sair")
      escreva("    : ")
      leia(operacao)                   //Armazena o valor digitado em OPERAÇÃO
      se (operacao = 6) entao
         escreval ("Você Saiu. ")
         fimalgoritmo
      senao
         escreva("Digite o valor de a: ") //Pede um número ao usuário para A
         leia(a)                          //Armazena o valor digitado em A
         se (operacao <> 5) entao
            escreva("Digite o valor de b: ") //Pede um número ao usuário para B
            leia(b)
         fimse
      fimse
      repita
         se (operacao<1) ou (operacao>6) entao //Verifica se o número digitado está entre 1 e 4
            escreva ("Número inválido. Digite novamente. ")
         fimse
      ate (operacao>=1) e (operacao<=6)

      se (operacao = 1) entao
         resultado <- a+b              //Soma A e B quando a operação escolhida é 1
      fimse
      se (operacao = 2) entao
         resultado <- a-b              //Subtrai A e B quando a operação escolhida é 2
      fimse
      se (operacao = 3) entao
         resultado <- a*b              //Multiplica A e B quando a operação escolhida é 3
      fimse
      se (operacao = 4) e (b <> 0) entao //Verifica se B é diferente de zero
         resultado <- a/b                //Divide A por B quando a operação escolhida é 4
      fimse
      se (operacao = 5) entao
         FAT:=1
         para i:=2 ate a faca			//erro comeca aqui
            FAT:=FAT*i
         fimpara						//termina aqui
      fimse
      escreval("O resultado é: ", resultado) //Exibe o resultado de acordo com a operação escolhida
   ate Sair
Fimalgoritmo

 

  • Obrigado 1
  • Membro VIP
  • Solução
Postado

Olá @Hotaru.

 

Sobre:

1 hora atrás, Hotaru disse:

a, b, resultado, N, FAT,: real

 

Tem uma vírgula a mais ali no final. Basta apagar.

 

 

 

1 hora atrás, Hotaru disse:

      escreva("    : ")
      leia(operacao)                   //Armazena o valor digitado em OPERAÇÃO
      se (operacao = 6) entao
         escreval ("Você Saiu. ")
         fimalgoritmo

 

Esse fimAlgoritmo está perdido aí... só remover também.

 

 

Sobre:

1 hora atrás, Hotaru disse:

o que esta de  errado no FAT? ja vi e mudei varias vezes e nada

 

Dois pontos:

A sintaxe padrão seria:

para <variável> de <valor-inicial> ate <valor-limite> [passo <incremento>] faca
   <seqüência-de-comandos>
fimpara

Fonte: https://www.apoioinformatica.inf.br/produtos/item/14-comandos-de-repeticao

 

No caso ficaria:

         para i de 2 ate a faca
            FAT:=FAT*i
         fimpara	

 

Mas o principal problema é que a é do tipo real, e o para não aceita esse tipo... tem que usar uma variável do tipo inteiro.

 

Uma forma de resolver seria:

         para i de 2 ate int(a) faca
            FAT:=FAT*i
         fimpara

Ou você utiliza outra variável...

 

Aí fica faltando apenas jogar o valor de FAT no resultado.

 

No aguardo.

  • Curtir 1
  • Amei 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!