Υπολογισμός ημερομηνία για μια ημέρα της εβδομάδας

ψήφοι
1

Λαμβάνοντας υπόψη την εβδομάδα ημερών (1-7), πώς μπορώ να υπολογίσω τι καταληκτική ημερομηνία για την εβδομάδα-ημέρας ήταν;

Παράδειγμα: Σήμερα είναι Τετάρτη , 12/11/2008, και θέλω να ξέρω τι την περασμένη Παρασκευή ημερομηνία αυτή.

Δημοσιεύθηκε 12/11/2008 στις 20:45
πηγή χρήστη
Σε άλλες γλώσσες...                            


2 απαντήσεις

ψήφοι
1

Αν todayείναι η τρέχουσα ημέρα της εβδομάδας, τότε μπορείτε να χρησιμοποιήσετε κάτι σαν:

days_since_friday = (((today - 1) + 7) - (6 - 1)) % 7

Αυτό προϋποθέτει ότι η Παρασκευή αντιπροσωπεύεται από τον αριθμό 6η ημέρα της εβδομάδας (δηλαδή, 1 αντιπροσωπεύει Κυριακή). Στη συνέχεια, αφαιρέστε days_since_fridayαπό την τρέχουσα ημερομηνία, και θα πάρετε την ημερομηνία το τέλος της περασμένης εβδομάδας.

Η παραπάνω έκφραση είναι λίγο πιο περίπλοκη από ό, τι χρειάζεται να είναι. Εάν ημέρα της εβδομάδας σας ξεκίνησε σε 0 για την Κυριακή, απλοποιεί σε:

days_since_friday = ((today + 7) - 5) % 7

ή

days_since_friday = (today + 2) % 7
Απαντήθηκε 12/11/2008 στις 20:50
πηγή χρήστη

ψήφοι
4

Γενικά? Δείτε ημερολογιακούς υπολογισμούς .

Σε αυτό το στενότερο περίπτωση, κατά την προηγούμενη εβδομάδα; Βρείτε τη διαφορά σε ημέρες (Παρασκευή-= 5, Τετάρτη = 3). Βρείτε τις διαφορές σε εβδομάδες (την περασμένη εβδομάδα = -7 ημέρες). Όταν έχετε βρει το offset σε ημέρες + εβδομάδες, ισχύει ότι αντισταθμίζεται από την ημερομηνία ημερολογίου.

Απαντήθηκε 12/11/2008 στις 20:53
πηγή χρήστη

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more