Pular para o conteúdo

Logica das horas [RESOLVIDO]

Responder tópico
  • Denunciar
  • Indicar

1. Logica das horas [RESOLVIDO]

Enviado em 05/10/2017 - 19:20h

Estou com dificuldade de criar um algoritmo que trabalhe nos horarios estipulados. Hora é para desligar hora para ligar de acordo com uma tabela que faz verificação todo instante. Para facilitar os cálculos as horas e minutos são concatenados ex: 12:00 -> 1200 ou 01:00 -> 100 .
10:00 liga
12:00 desliga
15:00 liga
20:00 desliga
21:00 liga
03:00 desliga
preciso fazer um algorimo que pegue a hora atual e compare com a lista e fale se esta ligado ou desligado!!
Exemplo agora é 11:00 é para esta ligado qual logica poderia usar para definir se esta desligado ou nao de acordo com a hora "atual" e a "hora de cada linha" percorrida em toda a tabela? nao sei se me entenderam qualquer sugestão sera bem vinda!

Responder tópico

2. Re: Logica das horas

Melhor resposta

Enviado em 05/10/2017 - 20:05h

condtec escreveu:

Estou com dificuldade de criar um algoritmo que trabalhe nos horarios estipulados. Hora é para desligar hora para ligar de acordo com uma tabela que faz verificação todo instante. Para facilitar os cálculos as horas e minutos são concatenados ex: 12:00 -> 1200 ou 01:00 -> 100 .
10:00 liga
12:00 desliga
15:00 liga
20:00 desliga
21:00 liga
03:00 desliga
preciso fazer um algorimo que pegue a hora atual e compare com a lista e fale se esta ligado ou desligado!!
Exemplo agora é 11:00 é para esta ligado qual logica poderia usar para definir se esta desligado ou nao de acordo com a hora "atual" e a "hora de cada linha" percorrida em toda a tabela? nao sei se me entenderam qualquer sugestão sera bem vinda!
Boa noite Condtec.
Segue sugestão:

#!/bin/bash

Hora=$(date +%H)
case $Hora in
12|20|03) STT=0; echo "$Hora Horas, DESLIGA STT= $STT" ;;
1[05]|21) STT=1; echo "$Hora Horas, LIGA STT=$STT" ;;
esac

É criada a var "STT", 0 = desligada, 1 = ligada
Fiz de acordo com as Horas citadas acima....
Para testar, faça:
#!/bin/bash
for Hora in {00..23};do
case $Hora in
12|20|03) STT=0; echo "$Hora Horas, DESLIGA STT= $STT" ;;
1[05]|21) STT=1; echo "$Hora Horas, LIGA STT=$STT" ;;
*) echo "$Hora Horas, Ação Não Definida" ;;
esac
done

Att.:
Marcelo Oliver


3. Re: Logica das horas [RESOLVIDO]

Enviado em 06/10/2017 - 07:20h

msoliver escreveu:


#!/bin/bash

Hora=$(date +%H)
case $Hora in
12|20|03) STT=0; echo "$Hora Horas, DESLIGA STT= $STT" ;;
1[05]|21) STT=1; echo "$Hora Horas, LIGA STT=$STT" ;;
esac

É criada a var "STT", 0 = desligada, 1 = ligada
Fiz de acordo com as Horas citadas acima....
Para testar, faça:
#!/bin/bash
for Hora in {00..23};do
case $Hora in
12|20|03) STT=0; echo "$Hora Horas, DESLIGA STT= $STT" ;;
1[05]|21) STT=1; echo "$Hora Horas, LIGA STT=$STT" ;;
*) echo "$Hora Horas, Ação Não Definida" ;;
esac
done

Att.:
Marcelo Oliver

Muito Obrigado Marcelo! Valeu!!!


4. Re: Logica das horas [RESOLVIDO]

Enviado em 06/10/2017 - 16:35h

condtec escreveu:

msoliver escreveu:


#!/bin/bash

Hora=$(date +%H)
case $Hora in
12|20|03) STT=0; echo "$Hora Horas, DESLIGA STT= $STT" ;;
1[05]|21) STT=1; echo "$Hora Horas, LIGA STT=$STT" ;;
esac

É criada a var "STT", 0 = desligada, 1 = ligada
Fiz de acordo com as Horas citadas acima....
Para testar, faça:
#!/bin/bash
for Hora in {00..23};do
case $Hora in
12|20|03) STT=0; echo "$Hora Horas, DESLIGA STT= $STT" ;;
1[05]|21) STT=1; echo "$Hora Horas, LIGA STT=$STT" ;;
*) echo "$Hora Horas, Ação Não Definida" ;;
esac
done

Att.:
Marcelo Oliver

Muito Obrigado Marcelo! Valeu!!!



Por "nada".
Se marcar a resposta como "A MELHOR", ficarei eternamente grato. :)

Att.:
Marcelo Oliver

Responder tópico

Responder tópico

Entre na sua conta para responder.

Fazer login para responder