Ir ao conteúdo
  • Cadastre-se

VisualG visualg problema no algoritmo


Posts recomendados

Algoritmo "estações do ano"
// Disciplina  : 
// Professor   : 
// Descrição   : 
// Autor(a)    : iTwxx
// Data atual  : - - -
Var
// Seção de Declarações das variáveis 
DD: inteiro
MM: inteiro
AAAA: inteiro
parada: caracter

Inicio
// Seção de Comandos, procedimento, funções, operadores, etc... 

Escreval ("Informe o dia(DD)")
Leia (DD)
limpatela

Escreval ("Informe o mês(MM)")
Leia(MM)
limpatela

Escreval ("Informe o ano(AAAA)")
Leia (AAAA)
limpatela

Se (DD>=21) e (MM=9) ou (DD>=01) e (DD<=31) e (MM=10) e (MM=11) ou (DD<=20) e (MM=12)então
escreval ("Primavera")
senao
fimse

Se (DD>=21) e (MM=12) ou (DD>=01) e (DD<=31) e (MM=01) e (MM=02) ou (DD<=20) e (MM=03)então
escreval ("Verao")
senao
fimse

Se (DD>=21) e (MM=03) ou (DD>=01) e (DD<=31) e (MM=04) e (MM=05) ou (DD<=20) e (MM=06)então
escreval ("Outono")
senao
fimse

Se (DD>=21) e (MM=06) ou (DD>=01) e (DD<=31) e (MM=07) e (MM=08) ou (DD<=20) e (MM=09)então
escreval ("Inverno")
senao
escreval ("Data inválida")
fimse


Fimalgoritmo

 

O algoritmo tem o objetivo de receber as datas e informar a qual estação do ano a data tal pertence, porém, nada disso acontece...aparece apenas a mensagem de erro, mesmo estando com as datas corretas. O que pode ser?

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

@iTwxx    seu código está compilando ,  mas a lógica pelo jeito não está certa pois não mostra o resultado certo ,  precisa verificar isso .

Algoritmo "estações do ano"
// Disciplina  :
// Professor   :
// Descrição   :
// Autor(a)    : iTwxx
// Data atual  : - - -
Var
  DD    : inteiro
  MM    : inteiro
  AAAA  : inteiro
  parada: caracter
Inicio
  Escreval ("Informe o dia(DD)")
  Leia (DD)
  limpatela
  Escreval ("Informe o mês(MM)")
  Leia(MM)
  limpatela
  Escreval ("Informe o ano(AAAA)")
  Leia (AAAA)
  limpatela
  Se (DD>=21) e (MM=9) ou (DD>=01) e (DD<=31) e (MM=10) e (MM=11) ou (DD<=20) e (MM=12)ENTÃO
    escreval ("Primavera")
  senao
  fimse
  Se (DD>=21) e (MM=12) ou (DD>=01) e (DD<=31) e (MM=01) e (MM=02) ou (DD<=20) e (MM=03)ENTÃO
    escreval ("Verao")
  senao
  fimse
  Se (DD>=21) e (MM=03) ou (DD>=01) e (DD<=31) e (MM=04) e (MM=05) ou (DD<=20) e (MM=06)ENTÃO
    escreval ("Outono")
  senao
  fimse
  Se (DD>=21) e (MM=06) ou (DD>=01) e (DD<=31) e (MM=07) e (MM=08) ou (DD<=20) e (MM=09)ENTÃO
    escreval ("Inverno")
  senao
    escreval ("Data inválida")
  fimse
Fimalgoritmo

 

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

Algoritmo "estações do ano"
// Disciplina  :  [Linguagem e Lógica de Programação]
// Professor   : Antonio Carlos Nicolodi
// Descrição   : Aqui você descreve o que o programa faz! (função)
// Autor(a)    : Nome do(a) aluno(a)
// Data atual  : 21/05/2018
Var
// Seção de Declarações das variáveis
DD: inteiro
MM: inteiro
AAAA: inteiro
parada: caracter
limite: inteiro

Inicio
// Seção de Comandos, procedimento, funções, operadores, etc...
limite<-2020


Escreval ("Informe o dia(DD)")
Leia (DD)
limpatela

Escreval ("Informe o mês(MM)")
Leia(MM)
limpatela

Escreval ("Informe o ano(AAAA)")
Leia (AAAA)
limpatela

//Primavera
Se (DD>=21) e (MM=9)então
escreval ("Primavera")
senao
fimse

Se (DD>=01) e (DD<=31) e (MM=10) ou (MM=11)então
escreval ("Primavera")
senao
fimse

Se (DD<=20) e (MM=12)então
escreval ("Primavera")
senao
fimse
//FimPrimavera
//==================\\
//Verao
Se (DD>=21) e (MM=12)então
escreval ("Verao")
senao
fimse

Se (DD>=01) e (DD<=31) e (MM=01) ou (MM=02)então
escreval ("Verao")
senao
fimse

Se (DD<=20) e (MM=03)então
escreval ("Verao")
senao
fimse
//Fim Verao
//==================\\
//Outono

Se (DD>=21) e (MM=03)então
escreval ("Outono")
senao
fimse

Se (DD>=01) e (DD<=31) e (MM=04) ou (MM=05)então
escreval ("Outono")
senao
fimse

Se (DD<=20) e (MM=06)então
escreval ("Outono")
senao
fimse
//FimOutono
//==================\\
//Inverno
Se (DD>=21) e (MM=06)então
escreval ("Inverno")
senao
fimse

Se (DD>=01) e (DD<=31) e (MM=07) ou (MM=08)então
escreval ("Inverno")
senao
fimse

Se (DD<=20) e (MM=09)então
escreval ("Inverno")
senao
fimse
//FimInverno

Se (DD>31) ou (MM>12) então
escreval ("Data inválida")
fimse

Fimalgoritmo

 

Após algumas modificações simples, o problema foi resolvido 

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

  • Membro VIP

Olá @iTwxx.

 

Se possível poste o enunciado completo.

 

De qualquer forma tem alguns pontos que precisam ser verificados:

- A sintaxe do se/senão está errada. Os senão não estão servindo de nada. Dê uma revisada sobre o comando... veja outros exemplo do uso no fórum e na internet e corrija o código.

- O código está lendo o ano, mas não está usando. Vale salientar que a estação do ano depende tanto do dia e mês, tanto da ano, inclusive depende também da hora. O inicio e fim das estações do ano mudam de ano para ano.

 

Ex.:
estacoes.jpg

Fonte: http://www.iag.usp.br/astronomia/inicio-das-estacoes-do-ano

 

 

 

 

 

 

 

 

 

 

 

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