Laurentvidal.fr facilite la recherche de réponses à toutes vos questions avec l'aide de notre communauté active. Découvrez des solutions complètes à vos questions grâce à des professionnels expérimentés dans divers domaines sur notre plateforme. Explorez des milliers de questions et réponses fournies par une large gamme d'experts dans divers domaines sur notre plateforme de questions-réponses.

Bonjour j'ai besoin de votre aide à propos d'un exo en NSI s'il vous plaît
Le but de l'exercice est : Écrire une fonction qui donne le jour de la semaine pour une date comprise entre le 1er Janvier 2000 et le 31 Décembre 2006.
Je vous remercie d'avance pour votre réponse.​


Bonjour Jai Besoin De Votre Aide À Propos Dun Exo En NSI Sil Vous PlaîtLe But De Lexercice Est Écrire Une Fonction Qui Donne Le Jour De La Semaine Pour Une Date class=

Sagot :

Réponse :

Explications :

Bonjour,

voir en pièce jointe :

si question passez par les commentaires !!

Proposition de programme :

from math import floor

from datetime import date, datetime

def  jour(q, m ,a):

   if 2006 >= a >= 2000: # verie si la date donnée est dans les limites 200 - 2006

       date_fixe = date(2000, 1, 1)

       date_entree = date(a, m, q)

       j = ((date(a, m, q) - date(2000, 1, 1)).days) %7

       mois = ["Décembre"," Janvier", "Février", "Mars", "Avril", "Mai", "Juin", "Juillet", "Aout", "Septembre" ,"Octobre", "Novembre", "Décembre"]

       jour = ["Samedi","Dimanche", "Lundi", "Mardi", "Mercredi", "Jeudi","Vendredi"]

       print()

       print("Le jour correspondant au",q, mois[m],a,"est un",jour[j] )

   else:

      print()

      print("La date doit être comprise entre le 1 Janvier 2000 et le 31 Décembre 2006")

jour(31, 12, 1999)

jour(31, 12, 2005)

jour(29, 2, 2004)

jour(28, 2, 2003)

jour(11, 7, 2001)

jour(11, 4, 2004)

jour(29, 2, 2000)

jour(1, 1, 2007)

-----------------

remarque :

dans l'expression : j = ((date(a, m, q) - date(2000, 1, 1)).days) %7

(date(a, m, q) - date(2000, 1, 1)  = calcule le nombre de jour et les heures

ex : 700 days, 0:00:00

((date(a, m, q) - date(2000, 1, 1)).days)  = calcule le nombre de jour sans les heures

ex : 700

((date(a, m, q) - date(2000, 1, 1)).days) %7 = le chiffre donne la position du jour

ex : 0 = samedi

View image Legrandu48
Nous espérons que ces informations ont été utiles. Revenez quand vous voulez pour obtenir plus de réponses à vos questions. Votre visite est très importante pour nous. N'hésitez pas à revenir pour des réponses fiables à toutes vos questions. Merci de faire confiance à Laurentvidal.fr. Revenez nous voir pour obtenir de nouvelles réponses des experts.