Módulo 03, Ex 53 — Não estou conseguindo usar o comando “para”

Home Fóruns Programação Básica Módulo 03, Ex 53 — Não estou conseguindo usar o comando “para”

Visualizando 2 respostas da discussão
  • Autor
    Posts
    • #90154

      A mensagem que aparece é: “A EXPRESSÃO NÃO FOI INICIADA CORRTAMENTE. INSIRA O CARACTER ‘(‘ PARA CORRIGIR O PROBLEMA.”
      Essa mensagem some quando retiro o “PARE”, mas fico com o programa em loop…
      programa
      {
      inclua biblioteca Tipos –> tp
      inclua biblioteca Texto –> txt
      funcao inicio()
      {
      inteiro num, contador = 1
      caracter resp = ‘S’
      cadeia teclado
      faca{
      escreva(“Valor”, contador,”\n”)
      enquanto(verdadeiro){
      escreva(“Digite um valor (entre 1 e 10): “)
      leia(teclado)
      se(tp.cadeia_e_inteiro(teclado, 10)){
      num = tp.cadeia_para_inteiro(teclado, 10)
      se(num>=1 e num<=10){
      contador++
      para
      }senao{
      escreva(“<<ERRO>> O número deve estar entre 1 e 10!\n”)
      }
      }senao{
      escreva(“<<ERRO>> O valor deve ser um número inteiro!\n”)
      }
      }

      }enquanto(resp == ‘s’ ou resp == ‘S’)
      }
      }

    • #90161
      Arthur Martins Alves
      Participante

      Olá Antonio. Testei seu código aqui e pelo o que percebi o problema é que você está utilizando o comando “para”, quando o correto seria o “pare”, com “e” no final. Quando faço a troca o programa funciona normalmente. Tente trocar e veja se deu certo.

      • #90164
        Arthur Martins Alves
        Participante

        Outra coisa, no fim do seu “faça enquanto”, você deve utilizar o “e”, ao invés do “ou”. Ficando assim:

        }enquanto(resp == 's' e resp == 'S'
        

        Isso resolve o problema de loop infinito.

      • #90233

        MDS! não acredito que era uma pequeno erro de sintaxe. Muito obrigado por me dar essa luz… ontem passei o dia nas trevas pq nn estáva entendendo o erro…

    • #90165
      Arthur Martins Alves
      Participante

      faltou um pareteses ao fim da expressão acima:

      
      }enquanto(resp == 's' e resp == 'S')
      
Visualizando 2 respostas da discussão
  • Você deve fazer login para responder a este tópico.