Ir ao conteúdo
  • Cadastre-se

VISUALG - Como atribuir mais de uma condição ao ENQUANTO...FACA


Posts recomendados

Boooooaaa tarde pessoal,

 

Estou começando a estudar lógica no Visualg e estou tendo muita dificuldade em resolver um exercício de calculadora, pois bem estou com um campo que gostaria de limitar para somente digitar esses caracteres ( +, -, *, / ), tudo que for diferente disso nesse campo ter que gerar um erro, o problema é que só estou conseguindo atribuir essa regra a 1 desses caracteres que é o "+" se tento usar OU ele da erro. Vou postar meu progresso até o momento e espero poder contar com a ajudar de vocês, obrigado.

 

algoritmo "Calculadora"// Função :// Autor :// Data : 07/04/2015// Seção de DeclaraçõesvarN1: REALN2: REALOP: CARACTERRE: REALinicioESCREVAL ("**** CALCULADORA ****")ESCREVALESCREVA ("1º NÚMERO: ")LEIA (N1)ESCREVA ("ESCOLHA UM OPERADOR ( + - * / ): ")LEIA (OP)ENQUANTO OP <> "+" FACA //###### aqui é onde eu gostaria que essa condição se aplique a ( +, -, *, / ). ###########   ESCREVAL   ESCREVAL ("**** ERRO ****")   ESCREVAL   ESCREVAL ("O OPERADOR ", "( ",OP," )", " NÃO É UM OPERADOR VALIDO.")   ESCREVA ("ESCOLHA UM DOS OPERADORES VALIDOS ( + - * / ): ")   LEIA (OP)FIMENQUANTOESCREVALESCREVA ("2º NÚMERO: ")LEIA (N2)ESCOLHA (OP)CASO "+"   RE <- N1+N2CASO "-"   RE <- N1-N2CASO "*"   RE <- N1*N2CASO "/"   RE <- N1/N2FIMESCOLHASE OP = "+" então   OP <- "MAIS"   SE OP = "-" então      OP <- "MENOS"   FIMSE   SE OP = "*" então      OP <- "VEZES"   FIMSE   SE OP = "/" então      OP <- "DIVIDIDO"   FIMSEFIMSEESCREVALESCREVAL ("**** RESULTADO ****")ESCREVAL (N1," ", OP, N2, " É IGUAL A:", RE)ESCREVALfimalgoritmo
Link para o comentário
Compartilhar em outros sites

Muito obrigado pela ajuda @isrnick

 

Eu já tinha tentado usar o "E" no lugar do "OU" sem sucesso, porém agora fiz umas alterações no código e deu certo usar o "E".

 

ficou assim:

 

algoritmo "Calculadora"// Função :// Autor :// Data : 07/04/2015// Seção de DeclaraçõesvarN1: REALN2: REALOP: CARACTERRE: REALinicioESCREVAL ("**** CALCULADORA ****")ESCREVALESCREVA ("1º NÚMERO: ")LEIA (N1)ESCREVA ("ESCOLHA UM OPERADOR ( + - * / ): ")LEIA (OP)SE (OP <> "+") E (OP <> "-") E (OP <> "*") E (OP <> "/") entãoREPITA   ESCREVAL   ESCREVAL ("**** ERRO ****")   ESCREVAL   ESCREVAL ("O OPERADOR ", "( ",OP," )", " NÃO É UM OPERADOR VALIDO.")   ESCREVA ("ESCOLHA UM DOS OPERADORES VALIDOS ( + - * / ): ")   LEIA (OP)ATE (OP = "+") OU (OP = "-") OU (OP = "*") OU (OP = "/")FIMSEESCREVALESCREVA ("2º NÚMERO: ")LEIA (N2)ESCOLHA (OP)CASO "+"   RE <- N1+N2CASO "-"   RE <- N1-N2CASO "*"   RE <- N1*N2CASO "/"   RE <- N1/N2FIMESCOLHASE OP = "+" então   OP <- "MAIS"SENAO   SE OP = "-" então      OP <- "MENOS"   SENAO      SE OP = "*" então         OP <- "VEZES"      SENAO         SE OP = "/" então            OP <- "DIVIDIDO POR"         SENAO         FIMSE      FIMSE   FIMSEFIMSEESCREVALESCREVAL ("**** RESULTADO ****")ESCREVAL (N1," ", OP, N2, " É IGUAL A:", RE)ESCREVALfimalgoritmo
Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

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