Ir ao conteúdo
  • Cadastre-se

VisualG Contagem Inteligente Visualg - Algoritmo


Ir à solução Resolvido por Midori,

Posts recomendados

Pessoal, eu to começando na área e nesse algoritmo que fiz pra contagem inteligente dos números, o erro ta sempre na linha do Se onde o visualg diz que: Esperava ver o então.

Sendo que o então ta na linha. Alguém pode me ajudar ?

var
   contador, Ni, Nf :inteiro
inicio
   contador <- 0
   EscrevaL ("inicio: ")
   Leia (Ni)
   EscrevaL ("fim: ")
   Leia (Nf)
        Se (contador <= N) então
           Enquanto (contador <= N) faca
           contador <- contador + 1
           EscrevaL (contador)
           FimEnquanto
        Senao
             Enquanto (contador >= N)
             contador <- contador - 1
             EscrevaL (contador)
             FimEnquanto
        FimSe
fimalgoritmo

 

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

12 horas atrás, Midori disse:

@Luanfranca O teste condicional deve ser com uma das variáveis declaradas em Var. Então faltou declarar N ou testar a variável correta.

Eu ajustei isso no algoritmo, agora meu problema ta sendo apenas a contagem, pois só ta contando o primeiro número "Ni"

 

var
   contador, Ni, Nf:inteiro
inicio
   EscrevaL ("Inicio: ")
   Leia (Ni)
   EscrevaL ("Fim: ")
   Leia (Nf)
   contador <- Ni
   Se (contador < Ni) então
      Enquanto (contador < Ni) faca
         contador <- contador + 1
         EscrevaL (contador)
      FimEnquanto
   Senao
        Se (contador > Ni) então
           Enquanto (contador > Ni) faca
           contador <- contador - 1
           EscrevaL (contador)
           FimEnquanto
        FimSe
   FimSe
fimalgoritmo

 

 

Em 10/03/2023 às 19:11, Selma Takahashi disse:

@Murilo Prestes

 

Só dá certo se o maior está em primeiro e o menor em segundo, como fazer o resultado independente de qual dos times ganhou? Se é que me fiz entender....

 

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

  • Solução

@Luanfranca Se entendi o que quer fazer é mostrar a contagem crescente caso o valor inicial seja menor e descrescente se maior. Para isso não é necessário contador e nem a condicional SE. A estrutura Enquanto tem o teste condicional então é só colocar o critério, p.ex,

 

Var
    Ni, Nf: Inteiro
Inicio
    EscrevaL("Inicio: ")
    Leia (Ni)
    EscrevaL("Fim: ")
    Leia (Nf)
   
    Enquanto Ni < Nf Faca
        EscrevaL(Ni)
        Ni <- Ni + 1
    FimEnquanto
   
    Enquanto Ni >= Nf Faca
        EscrevaL(Ni)
        Ni <- Ni - 1
    FimEnquanto
FimAlgoritmo

 

  • Curtir 1
  • Obrigado 1
Link para o comentário
Compartilhar em outros sites

1 minuto atrás, Midori disse:

@Luanfranca Se entendi o que quer fazer é mostrar a contagem crescente caso o valor inicial seja menor e descrescente se maior. Para isso não é necessário contador e nem a condicional SE. A estrutura Enquanto tem o teste condicional então é só colocar o critério, p.ex,

 

Var
    Ni, Nf: Inteiro
Inicio
    EscrevaL("Inicio: ")
    Leia (Ni)
    EscrevaL("Fim: ")
    Leia (Nf)
   
    Enquanto Ni < Nf Faca
        EscrevaL(Ni)
        Ni <- Ni + 1
    FimEnquanto
   
    Enquanto Ni >= Nf Faca
        EscrevaL(Ni)
        Ni <- Ni - 1
    FimEnquanto
FimAlgoritmo

 

Tmj irmão, obrigado

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

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!