img
@_ö
(08:09)  Bienvenue ! - Inscrivez vous pour poster ! -
@Boo, Lionel Debroux + 32 inconnu(s)

Login :  Mot de passe :      Se souvenir de moi.  Mot de passe perdu ?
/!\:: Cliquez ici pour vous inscrire et poster, créer des sujets ou des forums ! ::/!\
 « - 1/2 - Suivant » :: Pages
 Index » Forum informatique & développement :: Forum Ti 89, Titanium / 92+ / Voyage 200 et TI-Nspire » Algorithmie et optimisation (34r) » calendrier
./Post de départ - calendrier
16.06.2001 - 55196
13:07  squalyl - Posté : 26-09-2007  M

j'ai besoin de coder un calendrier avec les numéros de semaine.
Certaines années ont 53 semaines, et les autres 52.

Empiriquement j'ai trouvé un rythme pour ces semaines: tous les 5,5 ans, cad on saute 5 ans, et puis on saute 4 ans, ce qui donne un rythme de 2 années de 53 semaines tous les 11 ans. On peut trouver des infos officielles sur ça?

j'ai trouvé les années à 53 semaines suivantes: 1970, 1976, 1981, 1987, 1992... ce qui doit donc continuer en 1998, 2003, 2009
c'est correct d'après vous?


For most people, good enough is near enough. For the few, good enough is never enough.
Nspire wiki
CONDUCTEUR Va-et-vient Des QUATRE MANCHE AVEC DES DIODES
./Publicité AdSense
./1
10.06.2001 - 21295
13:10  Thibaut - Posté : 26-09-2007  M

En clair tu cherches un algo qui génère un calendrier perpétuel ?

On doit pouvoir trouver très facilement ça sur Internet. Je ne pense pas que ce soit des algorithmes obscurs et brevetés, vu qu'on trouve des calendriers perpétuels dans tous les appareils d'aujourd'hui (PDA, téléphones, montres, PC).


Un site complet sur lequel vous trouverez des programmes et des jeux pour votre calculatrice TI 89 / Titanium / 92+ / Voyage 200 : www.ti-fr.com
Quelques idées personnelles ici.
./2
10.06.2001 - 32568
13:14  Kevin Kofler - Posté : 26-09-2007  M

Attention aux années bissextiles sautées par le calendrier grégorien (1900, 2100, ...).


Mes news pour calculatrices TI: Ti-Gen (fr/en), MobiFiles (de)
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité
./3
16.06.2001 - 55196
13:18  squalyl - Posté : 26-09-2007  M

Kevin > oui, je sais, une année est bissextile si elle est multiple de 4, sauf si elle est multiple de 100, mais quand même si elle est multiple de 400. Pas de souci, là. J'utilise des fonctions PHP genre localtime et mktime pour faire les conversions, au moins dans mon prototype privé.

Par contre, oui, je veux faire un calendrier style windows mobile ou téléphone, donc je dois me synchroniser sur les semaines de 7 jours, qui commencent au petit bonheur en fait :p , et j'imagine bien qu'il y a pas de brevet sur le temps qui passe :D

v essayer de googler, j'espérais juste que qn pourrait me répondre si c'est un truc connu :)

edit: quelques idées ici, il calcule le nb de semaines de chaque mois http://www.javascriptfr.com/code.aspx?ID=32185
 
 function Sem(A,M,J) 
 { 
 date.setYear(A); 
 date.setMonth(M); 
 date.setDate(J); 
 date2=new Date(A,0,1); 
 x=1; 
 //Cherche le premier Lundi de l'année 
 do 
 { 
 date2.setDate(x); 
 x++; 
 } 
 while(date2.getDay()!=1); 
 temps=date.getTime()-date2.getTime()+24*60*60*1000; 
 sem=temps/(1000*60*60*24*7); 
 return Math.ceil(sem); 
 } 


Apparemment la semaine 1 est celle qui contient le premier lundi de l'année, c'est plus simple, je vais tester.

Edit, oui, la semaine 1 est bien celle qui contient le premier lundi de l'année

Edité par squalyl le 26-09-2007 à 13:31:23.

For most people, good enough is near enough. For the few, good enough is never enough.
Nspire wiki
CONDUCTEUR Va-et-vient Des QUATRE MANCHE AVEC DES DIODES
./4
16.06.2003 - 25855
13:22  Sally - Posté : 26-09-2007  F

squalyl > ça ne marchera pas, pourquoi tu essayes de trouver un rythme empirique ? (en vrai il y a bien une période mais a priori c'est 400 ans :p )
Qu'est-ce que tu appelles une année avec 53 semaines, tu veux dire une année avec 53 lundis ? (ou avec 53 dimanches ? certains font commencer la semaine le dimanche ^^)

les infos officielles sont qu'une année normale fait 52 semaines et un jour, une année bissextile 52 semaines et deux jours.

Les règles pour trouver les années bissextiles (post-1581) sont : une année est bissextile si son numéro est un multiple de 4 *sauf* si c'est un multiple de 100 et pas de 400. Ainsi l'année 1600 était bissextile, 1700, 1800 et 1900 ne l'ont pas été, mais l'an 2000 oui.

edit : cross, les semaines de 7 jours ne commencent pas au petit bonheur #trifus# , tu avances exactement d'un jour par année simple et deux par année bissextile, il suffit de faire le calcul par rapport à une année dont tu connais le jour de départ...


« Le bonheur, c'est une carte de bibliothèque ! » — The gostak distims the doshes.
Forum Cultures du mondeforum littéraire
Membrane fondatrice de la confrérie des artistes flous.
L'univers est-il un dodécaèdre de Poincaré ?
(``·\ powaaaaaaaaa ! #love#
./5
16.06.2001 - 55196
13:32  squalyl - Posté : 26-09-2007  M

nan, mais on a crossé: je vais d'abord voir si la semaine 1 de l'année est celle qui contient le premier lundi. C'est facile à vérifier avec mon pda ou mon tel!

edit: cette assertion a l'air de fonctionner sur toutes les années entre 1970 et 2010.


For most people, good enough is near enough. For the few, good enough is never enough.
Nspire wiki
CONDUCTEUR Va-et-vient Des QUATRE MANCHE AVEC DES DIODES
./6
16.06.2003 - 25855
13:35  Sally - Posté : 26-09-2007  F

Regarde c'est simple : le premier janvier 2007 est un lundi. Tu peux partir de là.
Donc tu vas avoir 53 lundis en 2007 car le dernier jour sera aussi un lundi (le premier et le dernier jour sont le même dans le cas d'une année simple).
Le premier janvier 2008 sera un mardi, l'année est bissextile donc le dernier jour sera un mercredi.
Le premier janvier 2009 sera un jeudi.
En 2010 ce sera un vendredi.
En 2011 un samedi.
En 2012 un dimanche. 2012 sera bissextile donc elle se terminera un lundi, et donc il y aura de nouveau 53 lundis en 2012.
2013 commencera un mardi, etc.

ton année contient 53 lundis si et seulement si elle commence un lundi *ou* elle commence un dimanche et est bissextile =)

recross... tu veux dire qu'avant le premier lundi on est dans la semaine 0 ? mais ce que tu voulais savoir c'est s'il y a une semaine n° 53, non ?

Edité par Sally le 26-09-2007 à 14:38:49.

« Le bonheur, c'est une carte de bibliothèque ! » — The gostak distims the doshes.
Forum Cultures du mondeforum littéraire
Membrane fondatrice de la confrérie des artistes flous.
L'univers est-il un dodécaèdre de Poincaré ?
(``·\ powaaaaaaaaa ! #love#
./7
16.06.2001 - 55196
14:06  squalyl - Posté : 26-09-2007  M

heu, trouver une semaine 53 je peux le faire, si je connais la date du début de la semaine 1 suivante :)

mais ton idée est pratique aussi, j'aime bien :) ça fait une semaine pour trouver les années à 53 semaines :)

on va voir, merci en tout cas :)



For most people, good enough is near enough. For the few, good enough is never enough.
Nspire wiki
CONDUCTEUR Va-et-vient Des QUATRE MANCHE AVEC DES DIODES
./8
16.06.2001 - 55196
14:44  squalyl - Posté : 26-09-2007  M

ah non #grrr# le premier lundi de 2004 est le 5 janvier, mais c'est déja la semaine 2 #trifus# je comprends pas!


For most people, good enough is near enough. For the few, good enough is never enough.
Nspire wiki
CONDUCTEUR Va-et-vient Des QUATRE MANCHE AVEC DES DIODES
./9
10.06.2001 - 32568
14:47  Kevin Kofler - Posté : 26-09-2007  M

C'est parce que les gens donnent 2 numéros à la même semaine si elle entame 2 années. #sick#


Mes news pour calculatrices TI: Ti-Gen (fr/en), MobiFiles (de)
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité
./10
16.06.2001 - 55196
14:52  squalyl - Posté : 26-09-2007  M

mais non, pas possible

en tout cas, je n'arrive pas à trouver un critère pour obtenir la date du premier jour de la semaine 1. pourtant, ça devrait être possible !

A moins que ça marche vraiment comme j'ai trouvé, un point de repère et une semaine de plus tous les 5 ou 6 ans.


For most people, good enough is near enough. For the few, good enough is never enough.
Nspire wiki
CONDUCTEUR Va-et-vient Des QUATRE MANCHE AVEC DES DIODES
./11
16.06.2001 - 55196
14:57  squalyl - Posté : 26-09-2007  M

j'ai trouvé

http://www.univ-lemans.fr/~hainry/articles/semaine.html

Si la première semaine de l’année est incomplète (c’est le cas six fois sur sept ; quand le premier janvier n’est pas un lundi), elle est numérotée 1 dès lors qu’elle a au moins quatre jours, 0 sinon.

J'y avais pensé, mais j'ai pas exploré plus loin cette voie. je teste.


For most people, good enough is near enough. For the few, good enough is never enough.
Nspire wiki
CONDUCTEUR Va-et-vient Des QUATRE MANCHE AVEC DES DIODES
./12
30.06.2001 - 50019
14:59  Godzil - Posté : 26-09-2007  M

ben l'algo est simple

suffit de savoir pour un jour précis dans le passé (par exemple 1/1/1900) tu compte le nombre de jour entre 1/1/1900 et le début de l'année que tu veux

tu fait nombre_de_jour%7 pour connaitre le n° du jour (0 lundi, 1 mardi etc..) et ensuite tu sais quel jour c'est suffit de calculer combien de jour il manque pour aller a "lundi" d'apres et tu as ta date...


Proud to be CAKE©®™
The cake is a lie! - Love your weighted companion cube

->986-Studio's Wonder Project!<-

./13
16.06.2003 - 25855
14:59  Sally - Posté : 26-09-2007  F

Il y a un truc que j'ai pas dû comprendre, comment tu numérotes une semaine qui est à cheval sur deux ans ?
Là par exemple le 31 décembre sera un lundi, premier jour de la semaine n° 53 ; mais les six autres jours de la semaine seront en 2008.
Donc si tu veux juste regarder les semaines de l'année 2008, où places-tu ces six jours ? dans une semaine n° 0 ? ou est-ce que tu considères que comme la semaine a commencé en 2007 ils appartiennent en fait à l'année 2007 ? (cette dernière possibilité me semble étrange si tu veux le calendrier d'une année donnée...)

Si tu veux avoir tous les jours de l'année et que tu places ceux qui sont avant le premier lundi dans une semaine n° 0, alors presque toutes les années auront 53 semaines en comptant cette éventuelle semaine 0. En effet, dès que l'année ne commence pas un lundi, tu auras une semaine n° 0, et dans le cas où l'année commence un lundi (comme en 2007, où il n'y a donc pas de semaine 0), il y a une semaine n° 53. Mais il y a un cas très précis où tu vas te retrouver avec à la fois une semaine 0 et une semaine 53 (donc 54 semaines en tout — dont deux d'un seul jour :D ), c'est celui d'une année bissextile commençant un dimanche, comme 2012.
squalyl (./7) :
heu, trouver une semaine 53 je peux le faire, si je connais la date du début de la semaine 1 suivante img
Ben si tu connais le début de la semaine 1 suivante tu peux trouver la dernière semaine d'une année, mais ça ne te dit pas si c'est la n° 52 ou la n° 53, enfin pas sans calcul ^^ (bon bien sûr si tu connais aussi la semaine 1 précédente tu peux faire la différence et diviser par 7 mais bon %) ). Ta dernière semaine sera la n° 53 si elle commence le 31 décembre, ou bien si c'est une année bissextile et qu'elle commence le 30 décembre.

edit : sextuple cross #zzz# #grrr#


« Le bonheur, c'est une carte de bibliothèque ! » — The gostak distims the doshes.
Forum Cultures du mondeforum littéraire
Membrane fondatrice de la confrérie des artistes flous.
L'univers est-il un dodécaèdre de Poincaré ?
(``·\ powaaaaaaaaa ! #love#
./14
16.06.2003 - 25855
15:08  Sally - Posté : 26-09-2007  F

squalyl (./11) :
Si la première semaine de l’année est incomplète (c’est le cas six fois sur sept ; quand le premier janvier n’est pas un lundi), elle est numérotée 1 dès lors qu’elle a au moins quatre jours, 0 sinon.
OK (bon il est faux que ça arrive six fois sur sept, enfin statistiquement c'est vrai mais il n'y a pas une période de 7 ans, mais bon...)

Bon ça change pas grand chose à ce que je viens de dire, il reste vrai que presque toutes les années ont 53 semaines, simplement ces semaines seront numérotées de 0 à 52 si l'année commence un vendredi, un samedi ou un dimanche, et de 1 à 53 si elle commence un lundi, un mardi, un mercredi ou un jeudi. Le cas particulier de l'année bissextile commençant un dimanche reste, avec ses 54 semaines numérotées de 0 à 53.


« Le bonheur, c'est une carte de bibliothèque ! » — The gostak distims the doshes.
Forum Cultures du mondeforum littéraire
Membrane fondatrice de la confrérie des artistes flous.
L'univers est-il un dodécaèdre de Poincaré ?
(``·\ powaaaaaaaaa ! #love#
./15
16.06.2001 - 55196
15:32  squalyl - Posté : 26-09-2007  M

voila :)

enfin, quelle que soit la manière de le dire (semaines incomplètes toussa...) les algos de l'univ du mans dont j'ai donné la page fonctionnent. Ils me donnent la bonne date pour la semaine 1.

merci de ces échanges constructifs :)


For most people, good enough is near enough. For the few, good enough is never enough.
Nspire wiki
CONDUCTEUR Va-et-vient Des QUATRE MANCHE AVEC DES DIODES
./16
10.06.2001 - 32568
17:03  Kevin Kofler - Posté : 26-09-2007  M

squalyl (./11) :
Si la première semaine de l’année est incomplète (c’est le cas six fois sur sept ; quand le premier janvier n’est pas un lundi), elle est numérotée 1 dès lors qu’elle a au moins quatre jours, 0 sinon.

#eek# #sick# On ne peut pas plus illogique. :(


Mes news pour calculatrices TI: Ti-Gen (fr/en), MobiFiles (de)
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité
./17
16.06.2001 - 55196
18:46  squalyl - Posté : 26-09-2007  M

en effet, mais bon, tous les calendriers que je connais numérotent les semaines de la même façon, donc même si c'est space, ça doit bien être ça :S


For most people, good enough is near enough. For the few, good enough is never enough.
Nspire wiki
CONDUCTEUR Va-et-vient Des QUATRE MANCHE AVEC DES DIODES
./18
30.10.2001 - 32910
20:52  Pollux - Posté : 26-09-2007  M

Sally (./14) :
squalyl (./11) :
Si la première semaine de l’année est incomplète (c’est le cas six fois sur sept ; quand le premier janvier n’est pas un lundi), elle est numérotée 1 dès lors qu’elle a au moins quatre jours, 0 sinon.
OK (bon il est faux que ça arrive six fois sur sept, enfin statistiquement c'est vrai mais il n'y a pas une période de 7 ans, mais bon...)

Euh statistiquement c'est faux aussi, la probabilité exacte est multiple de 1/400 %) (tu voulais dire "statistiquement sur tous les calendriers grégoriens" peut-être ? #hehe# )



« The biggest civil liberty of all is not to be killed by a terrorist. » (Geoff Hoon, ministre des transports anglais)
./19
16.06.2003 - 25855
00:51  Sally - Posté : 27-09-2007  F

en fait je me suis aperçu après que c'était faux aussi mais j'ai eu la flemme d'éditer ^^


« Le bonheur, c'est une carte de bibliothèque ! » — The gostak distims the doshes.
Forum Cultures du mondeforum littéraire
Membrane fondatrice de la confrérie des artistes flous.
L'univers est-il un dodécaèdre de Poincaré ?
(``·\ powaaaaaaaaa ! #love#
./20
16.06.2001 - 55196
10:41  squalyl - Posté : 27-09-2007  M

le truc le plus drôle que je remarque c'est que par exemple, la dernière semaine de 1984 a deux numéros: 53 et 1 :D et qu'on prend la semaine 1, car elle contient le premier lundi de l'année, mais qu'alors, 1984 a deux semaines "1" tricouic (donc le nb de semaines par an est indépendant de la numérotation des semaines, parce que j'ai besoin de savoir que 1984 a 52 semaines, et pas 53, pour faire la correction!


For most people, good enough is near enough. For the few, good enough is never enough.
Nspire wiki
CONDUCTEUR Va-et-vient Des QUATRE MANCHE AVEC DES DIODES
./21
16.06.2003 - 25855
11:44  Sally - Posté : 27-09-2007  F

J'ai rien compris %) évidemment que le nombre de semaines par an est indépendant de la façon dont tu les numérotes, encore heureux %)
Et sinon c'est la question que je t'ai posée il y a 15 posts non ? sur comment tu numérotes les semaines à cheval sur deux années, c'est logique qu'elles aient deux numéros différents selon l'année que tu considères ; mais du coup je ne comprends pas pourquoi 1984 aurait deux semaines "1" : la dernière semaine ne porte le numéro 1 qu'en 1985... #confus#


« Le bonheur, c'est une carte de bibliothèque ! » — The gostak distims the doshes.
Forum Cultures du mondeforum littéraire
Membrane fondatrice de la confrérie des artistes flous.
L'univers est-il un dodécaèdre de Poincaré ?
(``·\ powaaaaaaaaa ! #love#
./22
16.06.2001 - 55196
11:55  squalyl - Posté : 27-09-2007  M

oué en fait y'a 3 jours dans la semaine 52 et 4 jours dans la semaine 1 de 1985, mais c'est sur la même ligne de calendrier...

(brayf)


For most people, good enough is near enough. For the few, good enough is never enough.
Nspire wiki
CONDUCTEUR Va-et-vient Des QUATRE MANCHE AVEC DES DIODES
./23
04.05.2005 - 2355
13:49  RHJPP - Posté : 27-09-2007  M

Je ne comprends pas trop le problème sur le numéro des semaines. Qu'est-ce qui est compliqué ou illogique de numéroter la semaine dans l'année où elle a le plus de jours ? C'est bien défini dans l'ISO 8601:1988.
squalyl (./11) :
j'ai trouvé

http://www.univ-lemans.fr/~hainry/articles/semaine.html
Je trouve leurs formules vraiment trop moches, elles ne fonctionnent plus après 2099.



./24
16.06.2001 - 55196
14:02  squalyl - Posté : 27-09-2007  M

pourquoi pas après 2099? #hum#

Et sinon merci pour l'ISO, comme ça c'est fixé
http://en.wikipedia.org/wiki/ISO_8601#Week_dates


For most people, good enough is near enough. For the few, good enough is never enough.
Nspire wiki
CONDUCTEUR Va-et-vient Des QUATRE MANCHE AVEC DES DIODES
./25
04.05.2005 - 2355
14:22  RHJPP - Posté : 27-09-2007  M

squalyl (./24) :
pourquoi pas après 2099? #hum#
Ha non, c'est bon, j'avais mal lu une ligne :) Mais les formules sont quand même moches :p



./26
16.06.2001 - 55196
14:51  squalyl - Posté : 27-09-2007  M

#crayon# pour le nb de jours par mois par exemple :D


For most people, good enough is near enough. For the few, good enough is never enough.
Nspire wiki
CONDUCTEUR Va-et-vient Des QUATRE MANCHE AVEC DES DIODES
./27
03.06.2003 - 12345
18:46  Ethaniel - Posté : 27-09-2007  M

squalyl (./11) :
j'ai trouvé

http://www.univ-lemans.fr/~hainry/articles/semaine.html

Si la première semaine de l’année est incomplète (c’est le cas six fois sur sept ; quand le premier janvier n’est pas un lundi), elle est numérotée 1 dès lors qu’elle a au moins quatre jours, 0 sinon.
De ça, j'en ai déduit un critère sympa =) .

Soit J le premier jeudi de l'année, il tombera forcément entre le 1er et le 7 janvier, inclus.
Soit S la semaine, allant du lundi au dimanche, qui contient J.
Si J tombe le 4, le 1er est un lundi, donc on commence l'année par une semaine complète qui sera numérotée 1, donc S=1.
Si J tombe le 5, le 6 ou le 7, on a au début de l'année, juste avant S, une semaine incomplète comportant 1, 2 ou 3 jours et qui sera donc numérotée 0, donc S=1.
Si J tombe le 1er, le 2 ou le 3, S est une semaine incomplète comportant 4, 5 ou 6 jours et qui sera donc numérotée 1, donc S=1.
Conclusion : la semaine 1 est celle qui contient le premier jeudi de l'année.
C'est peut-être un moyen de simplifier la recherche de la semaine 1, non ?


Je ne suis pas développeur Java : je suis artiste Java.
Ce que l’on conçoit bien s’énonce clairement, / Et le code pour l’écrire arrive aisément.
Hâtez-vous lentement ; toujours, avec méthode, / Vingt fois dans l’IDE travaillez votre code.
La perfection est atteinte, non pas lorsqu’il n’y a plus rien à ajouter, mais lorsqu’il n’y a plus rien à retirer.
You don't use science to show that you're right, you use science to become right.
./28
16.06.2001 - 55196
21:03  squalyl - Posté : 27-09-2007  M

purée alors là, super merci #king#


For most people, good enough is near enough. For the few, good enough is never enough.
Nspire wiki
CONDUCTEUR Va-et-vient Des QUATRE MANCHE AVEC DES DIODES
./29
16.06.2003 - 25855
21:08  Sally - Posté : 27-09-2007  F

(tu lis pas les liens que tu postes toi-même, squalyl ? #trifus# )


« Le bonheur, c'est une carte de bibliothèque ! » — The gostak distims the doshes.
Forum Cultures du mondeforum littéraire
Membrane fondatrice de la confrérie des artistes flous.
L'univers est-il un dodécaèdre de Poincaré ?
(``·\ powaaaaaaaaa ! #love#
./Publicité AdSense
 « - 1/2 - Suivant » :: Pages
 Index » Forum informatique & développement :: Forum Ti 89, Titanium / 92+ / Voyage 200 et TI-Nspire » Algorithmie et optimisation (34r) » calendrier

./Poster un nouveau message. - Ouvrir dans une nouvelle fenêtre
Login : Mot de passe :

url - image - media  
spoiler - pre - fixed
quote - box - hr
poll - code





Smileys
Smileys perso
Pièce jointe
     Flood control (?) :    
Les messages postés sont la propriété de leurs auteurs. Nous ne sommes pas responsables de leurs contenus.

» yN ©1624 - Aide / Charte / Crédits
56ms | Statistiques