FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  MembresMembres  GroupesGroupes  Connexion  
Derniers sujets
» A propos des attributs de fichier
par Oscaribout Aujourd'hui à 1:53

» Problème de math
par Marc37 Hier à 23:04

» Problème de math
par braveen Hier à 21:40

» I Love You
par papydall Hier à 19:22

» Un petit "coucou" à tous les Panoramiciens !
par mindstorm Hier à 17:06

» MARK_ON déclenche un événement ON_CLICK à la place de ...
par Jean Claude Mer 18 Oct 2017 - 18:08

» mise a jour calculatrice
par joeeee2017 Mer 18 Oct 2017 - 15:57

» [solved] 3D_LINE How to ?
par Jicehel Mer 18 Oct 2017 - 11:01

» Convertisseur de base 10 de 2 à 36
par gigi75 Mar 17 Oct 2017 - 18:49

» calculatrice avec touches movibles
par joeeee2017 Dim 15 Oct 2017 - 1:11

» CORTANA
par gigi75 Sam 14 Oct 2017 - 16:32

» Calculatrice
par Jean Claude Sam 14 Oct 2017 - 12:30

» Compilateur FBPano
par jean_debord Jeu 12 Oct 2017 - 9:53

» KGF_dll - nouvelles versions
par Klaus Mar 10 Oct 2017 - 18:49

» à propos de Panoramic_Editor [Résolu]
par Klaus Mar 10 Oct 2017 - 3:19

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Octobre 2017
LunMarMerJeuVenSamDim
      1
2345678
9101112131415
16171819202122
23242526272829
3031     
CalendrierCalendrier

Partagez | 
 

 Recherche du jour de la semaine d'après l'algo de Mike Keith

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
Jean Claude

avatar

Nombre de messages : 5040
Age : 63
Localisation : 83 Var
Date d'inscription : 07/05/2009

MessageSujet: Recherche du jour de la semaine d'après l'algo de Mike Keith   Ven 21 Fév 2014 - 16:38

Bonjour,
tous est dans le titre "Recherche du jour de la semaine d'après l'algo de Mike Keith",

J'ai juste besoin que vous vérifiez si je n'ai pas commis d'erreur en retranscrivant algorithme de Mike Keith en SUB pour Panoramic, Car je ne suis pas un matheu.

Vous trouverez l’algorithme en commentaire dans le code.
Code:
dim js$,jj$,mm$,aaaa$
jj$=21:mm$=02:aaaa$=2014: ' entrez ici la date au format jj/mm/aaaa
Retourne_Jour_Semaine(jj$,mm$,aaaa$)
' résultat dans le bandeau de form 0
caption 0,js$
END

Sub Retourne_Jour_Semaine(jour$,moi$,an$)
' d'après l'algorytme de Mike Keith
dim_local aaaa%,mm%,jj%,az,ma,rm,jjs,rp
jj%=val(jour$):mm%=val(moi$):aaaa%=val(an$)
if mm%>=3
  az=aaaa%:ma=2
else
  az=aaaa%-1:ma=0
end_if
rp=((int(23*mm%))/9)+jj%+4+aaaa%+(int(az/4))-(int(az/100))+(int(az/400))-ma
rm=mod(rp,7):jjs=int(rm)
if jjs=0 then js$="Dimanche"
if jjs=1 then js$="Lundi"
if jjs=2 then js$="Mardi"
if jjs=3 then js$="Mercredi"
if jjs=4 then js$="Jeudi"
if jjs=5 then js$="Vendredi"
if jjs=6 then js$="Samedi"
End_Sub

' WIKIPEDIA dit:

' Jour de semaine D = { [(23m)/9] + d + 4 + y + [z/4] - [z/100] + [z/400] - 2 (si m >= 3) } mod 7

' Comme Mike Keith est un Mathématicien Américain, D = Day pour Jour ; M = Month pour Mois et Y = Year pour Année
' Pour l'explication de la Division par 100 et par 400, c'est pour savoir si l'année est Bissextile  :
' Si Y n'est pas divisible par 4, l'année n'est pas Bissextile.
' Si Y est divisible par 4, l'année est Bissextile sauf si A est divisible par 100 et pas par 400.
' D = Jour de semaine (D = 0 à 6; 0=Dimanche, 1=Lundi, 2=mardi, 3=mercredi 4=jeudi, 5=vendredi, 6 = Samedi)
' [x] signifie le nombre entier résultant de la division, le reste étant ignoré
' m = Mois (m = 1 à 12; 1 = Janvier, 2 = Février, 3 = Mars, ... , 12 = Décembre) m >= 3 signifie m supérieur ou égal à 3
' d = Jour (d = 1 à 31)
' y = année
' z = y - 1 si m < 3
' z = y si m >= 3
' Modulo 7 ou mod 7 = reste de la division par 7

' Exemples :
' 1er cas : m < 3
' Le 18 janvier 1953 tombait quel jour de la semaine ?
' d = 18, m = 1, y = 1953 et z = y-1 = 1952; d'où :
' D = { [(23x1)/9] + 18 + 4 + 1953 + [1952/4] - [1952/100] + [1952/400] } mod 7
' D = (2 + 18 + 4 + 1953 + 488 - 19 + 4) mod 7
' D = 2450 mod 7 = 0 car 2450 = 7 x 350 + 0
' 18 janvier 1953 = un Dimanche

' 2eme cas : m > 3
' Le 2 août 1953 tombait quel jour de la semaine ?
' d = 2, m = 8, y = 1953 et z = y = 1953; d'où :
' D = { [(23x8)/9] + 2 + 4 + 1953 + [1953/4] - [1953/100] + [1953/400] - 2 } mod 7
' D = (20 + 2 + 4 + 1953 + 488 - 19 + 4 - 2) mod 7
' D = 2450 mod 7 = 0 car 2450 = 7 x 350 + 0
' 2 août 1953 = un Dimanche

' 3eme cas : m = 3
' Le 13 mars 1998 tombait quel jour de la semaine ?
' d = 13, m = 3, y = 1998 et z = y = 1998; d'où :
' D = { [(23x3)/9] + 13 + 4 + 1998 + [1998/4] - [1998/100] + [1998/400] - 2 } mod 7
' D = (7 + 13 + 4 + 1998 + 499 - 19 + 4 - 2) mod 7
' D = 2504 mod 7 = 5 car 2504 = 7 x 357 + 5
' 13 mars 1998 = un Vendredi 13 !

Merci de votre participation.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Yannick

avatar

Nombre de messages : 7994
Age : 46
Localisation : Bretagne
Date d'inscription : 15/02/2010

MessageSujet: re   Ven 21 Fév 2014 - 17:03

@ Jean Claude,

Cela à l' air de fonctionner correctement.
J' ai essayé avec plusieurs dates et tout va bien.

 Wink 
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
sergeauze

avatar

Nombre de messages : 391
Age : 65
Localisation : Hautes Alpes France
Date d'inscription : 09/01/2010

MessageSujet: Re: Recherche du jour de la semaine d'après l'algo de Mike Keith   Ven 21 Fév 2014 - 17:10

salut
J'ai testé pour ma date de naissance ça fonctionne
C'est bien un dimanche
Par contre   pour l’année 0027 je doute du jour
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://sergeauze.blog-video.tv/
Jean Claude

avatar

Nombre de messages : 5040
Age : 63
Localisation : 83 Var
Date d'inscription : 07/05/2009

MessageSujet: Re: Recherche du jour de la semaine d'après l'algo de Mike Keith   Ven 21 Fév 2014 - 17:21

Merci pour vos réponses,
je pense aussi que c'est bon, et toutes les vérif que j'ai faites le sont également.

Le sujet à déjà été traité notamment par Georges et Tengaal, mais c'était avant les sub(s).
Bon et bien je vais l'intégrer dans mon code en cours.

A+
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Yannick

avatar

Nombre de messages : 7994
Age : 46
Localisation : Bretagne
Date d'inscription : 15/02/2010

MessageSujet: re   Ven 21 Fév 2014 - 17:23

@ Sergeauze,

0027, c' était avant ou après JC ?...

 lol! 
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
sergeauze

avatar

Nombre de messages : 391
Age : 65
Localisation : Hautes Alpes France
Date d'inscription : 09/01/2010

MessageSujet: Re: Recherche du jour de la semaine d'après l'algo de Mike Keith   Ven 21 Fév 2014 - 17:29

J'ai aussi teste le 31 fevrier apres JC (2015)
L'algo ne tient pas compte des cas particuliers, ni des différents  calendriers
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://sergeauze.blog-video.tv/
Jean Claude

avatar

Nombre de messages : 5040
Age : 63
Localisation : 83 Var
Date d'inscription : 07/05/2009

MessageSujet: Re: Recherche du jour de la semaine d'après l'algo de Mike Keith   Ven 21 Fév 2014 - 17:41

@sergeause,
Bonne remarque.
Je n'ai pas codé les gardes-fous car c'est fait avant l'utilisation de la Sub. (dans mon code en cours).
Il faut effectivement que le programmeur empêche ce bourrin d'utilisateur de faire n'importe quoi.  Very Happy 

@Ygeronimi,
Je suis intéressé par toutes les dates, car s'il y a un avant-JC, il n'y pas encore (Dieu merci !) d'après-JC.

   lol!


Dernière édition par Jean Claude le Ven 21 Fév 2014 - 23:27, édité 1 fois
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Jean Claude

avatar

Nombre de messages : 5040
Age : 63
Localisation : 83 Var
Date d'inscription : 07/05/2009

MessageSujet: Re: Recherche du jour de la semaine d'après l'algo de Mike Keith   Ven 21 Fév 2014 - 23:26

@Sergeause,

Pas la peine de tourner bourrique pour si peu, t'es pas classé dans ces bourrins d'utilisateurs
 lol! 
A+
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Contenu sponsorisé




MessageSujet: Re: Recherche du jour de la semaine d'après l'algo de Mike Keith   

Revenir en haut Aller en bas
 
Recherche du jour de la semaine d'après l'algo de Mike Keith
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Recherche du jour de la semaine d'après l'algo de Mike Keith
» june ; après la nuit avant le jour j'irai chercher les hautes lumières
» [Résolu] A propos des mises à jour windows (après formatage du PC)
» C'est ta fête... mange gratuitement 2 semaine avant ou 1 semaine après...
» Reinitialisation d'un G278 après une mise à jour ratée

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: Vos sources, vos utilitaires à partager-
Sauter vers: