Având în vedere o săptămână de zile (1-7), cum pot calcula ceea ce a fost ultima dată săptămâna-zi?
Exemplu: Astăzi este miercuri , 2008/11/12, și vreau să știu ce ultima vineri a fost data.
Având în vedere o săptămână de zile (1-7), cum pot calcula ceea ce a fost ultima dată săptămâna-zi?
Exemplu: Astăzi este miercuri , 2008/11/12, și vreau să știu ce ultima vineri a fost data.
Dacă todayeste ziua curentă a săptămânii, atunci puteți folosi ceva de genul:
days_since_friday = (((today - 1) + 7) - (6 - 1)) % 7
Acest lucru presupune că vineri este reprezentat de numărul 6 zile din săptămână (adică, 1 reprezintă duminică). Apoi scade days_since_fridayde la data curentă, și veți obține de la data la sfârșitul săptămânii trecute.
Expresia de mai sus este puțin mai complicat decât trebuie să fie. În cazul în care dvs. zi de săptămâni a început la 0 pentru duminică, simplifică la:
days_since_friday = ((today + 7) - 5) % 7
sau
days_since_friday = (today + 2) % 7
În general? A se vedea calcule calendaristice .
În acest caz, mai restrânsă din cadrul săptămânii precedente? Găsiți diferența în zile (vineri = 5, miercuri = 3). Găsiți diferențele de săptămâni (săptămâna trecută = -7 zile). Când ați găsit diferența în zile + săptămâni, se aplică că diferența față de data calendaristică.