Ir ao conteúdo

VisualG Erro no algoritmo usando enquanto


Ir à solução Resolvido por Simon Viegas,

Posts recomendados

Postado

Pessoal tudo beleza?!

Sou iniciante na área da programação, e estou estudando algoritmos em português estruturado!

e me defrontei com um problema que está me deixando com a pulga atrás da orelha rsrsrsrs

Preciso criar um algoritmo que ao serem digitados valores maiores que 50 e menores que 70 o terminal pare de funcionar!

Detalhe somente usando Enquanto....

MONTEI ELE porém AO COMPILAR ELE ESTÁ DANDO ERRO 😕

algoritmo "Exercicio3"

// Função : Enquanto
// Autor : Álvaro Bueno Sanchez
// Data : 26.04.19

var
 Valor:Inteiro
inicio
Valor := 0
 Enquanto (Valor <= 50) e (Valor >= 70) faca
   limpatela
   Escreval("Digite um valor")
   Leia(Valor)
 FimEnquanto
 Limpatela
 Escreval("Esse era o Valor  que eu estava esperando!")
 Escreval
 Escreval("ALGORITMO FINALIZADO ./.\./.\./...")
fimalgoritmo

 

QUANDO EU COMPILEI O CÓDIGO ELE PULOU O ENLACE DE REPETIÇÃO INDO DIRETO PARA O FIM DA EXECUÇÃO?!

Capturar.PNG.ce92e7b9dc0f7fd5fb7efa29b02775c7.PNG

 

Postado

troca o operador e por ou

adicionado 0 minutos depois

tipo quando você usa E ele exige que você atenda todas as condições, e quando você usa o ou você utiliza a condição que for aceita primeiro 

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

Olá.

 

Resumindo:

Em 26/04/2019 às 18:35, MugenShion disse:

tipo quando você usa E ele exige que você atenda todas as condições

 

Quando utilizar uma disjunção (e), para entrar no enquanto, ambas as "condições" devem resultar em verdadeiro, para assim a "expressão" resultar em verdadeiro.

 

Em 26/04/2019 às 18:35, MugenShion disse:

quando você usa o ou você utiliza a condição que for aceita primeiro  

 

Quando utiliza uma conjunção (ou), basta uma condição ser verdadeira para iniciar (ou continuar repetindo). Será algo como: "enquanto o valor for menor igual a 50 OU maior ou igual a 70".

 

 

 

 

 

Em 26/04/2019 às 17:55, Álvaro Bueno Sanchez disse:

Preciso criar um algoritmo que ao serem digitados valores maiores que 50 e menores que 70 o terminal pare de funcionar!

 

Como vai ler primeiro, para depois verificar, poderia utilizar um repita. Exemplo:

algoritmo "Exercicio3"
// Função: Enquanto
// Autor : Álvaro Bueno Sanchez
// Data  : 26.04.19
var
   valor : inteiro
inicio
   repita
      LimpaTela()
      escreval("Digite um valor")
      leia(valor)
   ate ((valor > 50) e (valor < 70))
   LimpaTela()
   escreval("Esse era o Valor  que eu estava esperando!")
   escreval
   escreval("ALGORITMO FINALIZADO ./.\./.\./...")
fimAlgoritmo

 

ADENDO:

Repare que a condição do enquanto é o oposto da condição do repita, ou seja, um utiliza a negação do outro.

 

algoritmo "Exercicio3"
// Função: Enquanto
// Autor : Álvaro Bueno Sanchez
// Data  : 26.04.19
var
   valor : inteiro
inicio
   valor := 0
   repita
      LimpaTela()
      escreval("Digite um valor")
      leia(valor)
   ate nao ((valor <= 50) ou (valor >= 70))
   LimpaTela()
   escreval("Esse era o Valor  que eu estava esperando!")
   escreval
   escreval("ALGORITMO FINALIZADO ./.\./.\./...")
fimAlgoritmo

 

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

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

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!