Connaissances Informatiques >> programmation >> Computer Programming Languages >> Content
  Derniers articles
  • Comment faire pour remplacer une cha…
  • Comment écrire un script AWK 
  • Comment créer Timestamps dans des f…
  • Comment inventer Metrics logiciel in…
  • Comment fournir des références à …
  • Comment faire pour convertir un poly…
  • Video Studio Tutorial 
  • Comment Spécification produit Langu…
  • Comment réinitialiser une colonne B…
  • Quels sont les avantages d' une inst…
  •   Computer Programming Languages
  • C /C + + Programming

  • Computer Programming Languages

  • Delphi Programming

  • Programmation Java

  • Programmation JavaScript

  • PHP /MySQL Programmation

  • programmation Perl

  • Programmation Python

  • Ruby Programming

  • Visual Basics programmation
  •  
    Computer Programming Languages

    Comment calculer le jour de la semaine pour une année

    Un algorithme commun pour calculer le jour de la semaine d'une date en particulier est l'algorithme de Zeller . L'algorithme a été publié en 1882 et conçu pour être travaillé à la main, mais peut facilement être implémenté dans le logiciel . L'algorithme de Zeller travaille en trouvant le jour de la semaine du siècle a commencé , puis construire à partir de là en ajoutant années, mois et jours . Une bonne compréhension de l'arithmétique modulo est nécessaire de comprendre comment fonctionne l'algorithme , mais n'importe qui peut le mettre en œuvre en suivant les instructions. Instructions
    1

    Préparer les entrées . L'algorithme attend un jour, le mois et l'année. Numéros de l'algorithme de

    Zeller Les mois de trois à 14 , en commençant par Mars et se terminant avec Février . Cela garantit que les jours bissextiles tombent toujours à la fin de l'année , ce qui simplifie les calculs.

    Mois <3 puis , mois = 12 mois +
    2

    Calculer le siècle et l' année du siècle . Le siècle pour 1950 devrait être 19, même si elle tombe dans le XXe siècle.

    Siècle = floor ( année /100) = yearOfCentury année mod 100
    3

    Trouver le jour de la semaine où le siècle a commencé .

    dayOfWeek = floor ( siècle /4) + 5 * siècle

    Zeller a déterminé que ce calcul, modulo sept ans, donnera le jour de l' semaine que toute donnée siècle a commencé . Le calcul de l' étage gère le fait que chaque quatrième siècle est à court d'un jour bissextile.
    4

    calculer le jour de la semaine que l'année a commencé sur .

    DayOfWeek = dayOfWeek + yearOfCentury + étage ( yearOfCentury /4)

    Chaque année commence le lendemain de la semaine par rapport à l'année précédente , sauf pour les années bissextiles . Ce calcul , modulo sept ans, donne le jour de la semaine de la première journée de l'année.
    5

    Trouver le jour de la semaine que le mois a débuté le .

    DayOfWeek = dayOfWeek + étage ( ( mois + 1) * 26) /10) pour

    c'est le cœur de l'algorithme de Zeller . Zeller a observé que ce calcul est capable de déterminer sur quel jour de la semaine, un mois va commencer . Il élimine le besoin de tables de consultation pour déterminer la longueur de chaque mois.
    6

    Ajouter le jour du mois et de calculer le jour de la semaine sur lequel tombe la date .

    DayOfWeek = dayOfWeek + daydayOfWeek = dayOfWeek mod 7
    7

    convertir la date normes à jour ISO semaine.

    ISO date de semaine du jour de la semaine commence avec lundi = 1. L'algorithme de Zeller utilise samedi = 0. La conversion utilise l'arithmétique modulo .

    DayOfWeek = (( dayOfWeek + 5) mod 7 ) + 1

     
    Article précédent:
    Article suivant:
    Articles recommandés
  • Comment vider la mémoire tampon des publications en série dans MATLAB 
  • Comment calculer gigaoctets 
  • Comment changer de GW -BASIC à QBasic 
  • Quelle est la l'importance de la méthode de codage 8 -Bit 
  • Comment faire pour modifier le fichier Setup.exe 
  • Comment utiliser Substring C Sharp 
  • Struts Basics Tutorial 
  • Comment faire un navigateur 3D 
  • Comment faire pour supprimer un lecteur mappé sur VBS 
  • Comment écrire Pascal Pseudocode 
  • Connaissances Informatiques © http://www.ordinateur.cc