Page 1 sur 1

action semaine paire et impaire

Publié : 06 sept. 2017, 16:53
par sphinxou
bonjour

en lua comment déclencher une action tout les mardi à 18H00 les semaines paire et une autre action tout les mardi à 18h00 des semaine impaire.

merci

Re: action semaine paire et impaire

Publié : 06 sept. 2017, 19:41
par balajol

Re: action semaine paire et impaire

Publié : 06 sept. 2017, 19:49
par Chrominator
Bah finalement on peut simplifier en disant je fais des trucs différents les mardi à 18h chaque semaine ! :D

Quelques éléments pour t'aider :

tester si je suis mardi à 18h :
%H donne l'heure sur 2 digits, %M donne les minutes, %w donne le n° du jour de la semaine (dimanche = 0) cf https://www.lua.org/pil/22.1.html.

Code : Tout sélectionner

if os.date(%H)==18 and os.date(%M)==0 and os.date(%w)==2 then ...
Variante pour l'heure :

Code : Tout sélectionner

time = os.date("*t")
if (time.hour == 18 and time.min == 0) then
...
tester si la semaine est paire ou pas :
%W donne le n° de semaine, après on teste le reste de la division par 2. Si pas de reste c'est pair.

Code : Tout sélectionner

if os.date(%W)%2 == 0 then    	-- semaine paire
else							-- semaine impaire
end 

Re: action semaine paire et impaire

Publié : 08 sept. 2017, 07:56
par ColdFace
Chrominator a écrit :Bah finalement on peut simplifier en disant je fais des trucs différents les mardi à 18h chaque semaine ! :D

Quelques éléments pour t'aider :

tester si je suis mardi à 18h :
%H donne l'heure sur 2 digits, %M donne les minutes, %w donne le n° du jour de la semaine (dimanche = 0) cf https://www.lua.org/pil/22.1.html.

Code : Tout sélectionner

if os.date(%H)==18 and os.date(%M)==0 and os.date(%w)==2 then ...
Variante pour l'heure :

Code : Tout sélectionner

time = os.date("*t")
if (time.hour == 18 and time.min == 0) then
...
tester si la semaine est paire ou pas :
%W donne le n° de semaine, après on teste le reste de la division par 2. Si pas de reste c'est pair.

Code : Tout sélectionner

if os.date(%W)%2 == 0 then    	-- semaine paire
else							-- semaine impaire
end 
Effectivement cela fonctionne, merci pour l'infos.

Je me suis cassé les dents sur le os.date("%w"). J'avais besoin du jeudi donc le jour n°4 et il ne voulait rien savoir.
J'avais donc :

Code : Tout sélectionner

if os.date ("%H") == 18 and os.date ("%M") == 0 and os.date ("%w") == 4 then ...
Et la condition n'était jamais validée pourtant quand je faisais un print (os.date ("%w")) il me donnait bien 4.

Faute à la Bêta ou pas, j'ai lâché l'affaire après plusieurs tentatives...

Bref je suis passé par le nom du jour avec os.date ("%A").

Re: action semaine paire et impaire

Publié : 26 sept. 2017, 17:52
par sphinxou
bonjour

désoler pour la réponse tardive mais sa fonctionne parfaitement

merci