!Εύρεση ημέρας μιας συγκεκριμένης ημερομηνίας
!Για να υπολογίσετε την ημέρα μιας ημερομηνίας, ακολουθήστε τα τέσσερα βήματα της παρακάτω διαδικασίας:
!1) θεωρούμε τα δυο τελευταία ψηφιά του έτους σαν αριθμό το ονομάζουμε Α.
! Διαιρέστε το Α με το 12 και συγκρατήστε το πηλίκο (Π) και το υπόλοιπο (Υ).
! Στη συνεχεία προσθέστε τους εξής αριθμούς :
! α) το πηλίκο (Π) της διαίρεσης
! β) το υπόλοιπο (Υ) της διαίρεσης
! γ) το (Υ/4) που το ονομάζουμε Κ, το άθροισμα το ονομάζουμε (Β).
! Αν το άθροισμα (Β) είναι μεγαλύτερο του 7 το διαιρούμε με το 7 και κρατάμε το υπόλοιπο (Γ).
!2) Στο αποτέλεσμα (Γ) του παραπάνω βήματος προσθέστε τον χαρακτηριστικό αριθμό
! του μήνα από τον πίνακα και στη συνεχεία,
! αν είναι μεγαλύτερος ή ίσος του 7, αφαιρέστε 7 (Λ)
! Ιανουάριος 1
! Φεβρουάριος 4
! Μάρτιος 4
! Απρίλιος 0
! Μάιος 2
! Ιούνιος 5
! Ιούλιος 0
! Αύγουστος 3
! Σεπτέμβριος 6
! Οκτώβριος 1
! Νοέμβριος 4
! Δεκέμβριος 6
!3) Στο προηγούμενο αποτέλεσμα (Λ) προσθέστε την ημερομηνία και βγάλτε της
!επτάδες από τον αριθμό που προέκυψε. Αυτό που μένει είναι προφανώς
!ένας αριθμός από 0 μέχρι το 6. Αντιστοιχίστε τώρα το Σάββατο με το 0,
!την Κυριακή με το 1. κ.ο.κ. την Παρασκευή με το 6 και έτσι έχετε την ημέρα που ζητάτε.
!4) Αν το έτος είναι δίσεκτο και ο μήνας Ιανουάριος και Φεβρουάριος, τότε
!πηγαίνετε μια μέρα πίσω σε σχέση με το τελικό αποτέλεσμα του
!προηγούμενου βήματος.
ΠΡΟΓΡΑΜΜΑ ΝίκοςΜαλεβίτης
ΜΕΤΑΒΛΗΤΕΣ
ΑΚΕΡΑΙΕΣ: ΕΕ, Α, Π, Υ, Κ, Β, Γ, μήνας, Λ, ημερομηνία, Μ
ΧΑΡΑΚΤΗΡΕΣ: ημέρα, έτος
ΑΡΧΗ
ΓΡΑΨΕ 'Το πρόγαμμα βρίσκει την ημέρα μιας συγκεκριμένης ημερομηνίας'
ΓΡΑΨΕ 'Δώστε χρονολογία μετά τον 20ο αιώνα'
ΔΙΑΒΑΣΕ ΕΕ
ΓΡΑΨΕ 'Δώστε μήνα σε μορφή αρίθμου π.χ 1, 2..., 12'
ΔΙΑΒΑΣΕ μήνας
ΓΡΑΨΕ 'Δώστε ημερομηνία από 1 έως 31'
ΔΙΑΒΑΣΕ ημερομηνία
Α <-- ΕΕ MOD 100
Π <-- Α DIV 12
Υ <-- Α MOD 12
Κ <-- Υ DIV 4
Β <-- Π + Υ + Κ
ΑΝ Β>=7 ΤΟΤΕ
Γ <-- Β MOD 7
ΑΛΛΙΩΣ
Γ <-- Β
ΤΕΛΟΣ_ΑΝ
ΑΝ μήνας=1 ΤΟΤΕ
Λ <-- 1
ΑΛΛΙΩΣ_ΑΝ μήνας=2 ΤΟΤΕ
Λ <-- 4
ΑΛΛΙΩΣ_ΑΝ μήνας=3 ΤΟΤΕ
Λ <-- 4
ΑΛΛΙΩΣ_ΑΝ μήνας=4 ΤΟΤΕ
Λ <-- 0
ΑΛΛΙΩΣ_ΑΝ μήνας=5 ΤΟΤΕ
Λ <-- 2
ΑΛΛΙΩΣ_ΑΝ μήνας=6 ΤΟΤΕ
Λ <-- 5
ΑΛΛΙΩΣ_ΑΝ μήνας=7 ΤΟΤΕ
Λ <-- 0
ΑΛΛΙΩΣ_ΑΝ μήνας=8 ΤΟΤΕ
Λ <-- 3
ΑΛΛΙΩΣ_ΑΝ μήνας=9 ΤΟΤΕ
Λ <-- 6
ΑΛΛΙΩΣ_ΑΝ μήνας=10 ΤΟΤΕ
Λ <-- 1
ΑΛΛΙΩΣ_ΑΝ μήνας=11 ΤΟΤΕ
Λ <-- 4
ΑΛΛΙΩΣ_ΑΝ μήνας=12 ΤΟΤΕ
Λ <-- 6
ΤΕΛΟΣ_ΑΝ
Λ <-- Λ + Γ
ΑΝ Λ>=7 ΤΟΤΕ
Λ <-- Λ - 7
ΤΕΛΟΣ_ΑΝ
Μ <-- Λ + ημερομηνία
ΟΣΟ Μ>6 ΕΠΑΝΑΛΑΒΕ
Μ <-- Μ - 7
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΑΝ ((ΕΕ MOD 4 = 0) ΚΑΙ (ΕΕ MOD 100 <> 0)) Η (ΕΕ MOD 400 = 0) ΚΑΙ (μήνας=1) Η (μήνας=2) τότε
Μ <-- Μ - 1
ΤΕΛΟΣ_ΑΝ
ΑΝ Μ=0 ΤΟΤΕ
ημέρα <-- 'Σάββατο'
ΑΛΛΙΩΣ_ΑΝ Μ=1 ΤΟΤΕ
ημέρα <-- 'Κυριακή'
ΑΛΛΙΩΣ_ΑΝ Μ=2 ΤΟΤΕ
ημέρα <-- 'Δευτέρα'
ΑΛΛΙΩΣ_ΑΝ Μ=3 ΤΟΤΕ
ημέρα <-- 'Τρίτη'
ΑΛΛΙΩΣ_ΑΝ Μ=4 ΤΟΤΕ
ημέρα <-- 'Τετάρτη'
ΑΛΛΙΩΣ_ΑΝ Μ=5 ΤΟΤΕ
ημέρα <-- 'Πέμπτη'
ΑΛΛΙΩΣ_ΑΝ Μ=6 ΤΟΤΕ
ημέρα <-- 'Παρασκευή'
ΑΛΛΙΩΣ_ΑΝ Μ=-1 ΤΟΤΕ
ημέρα <-- 'Παρασκευή'
ΤΕΛΟΣ_ΑΝ
ΑΝ ΕΕ>2005 τότε
έτος <-- 'θα είναι'
ΑΛΛΙΩΣ
έτος <-- 'ήταν'
ΤΕΛΟΣ_ΑΝ
ΓΡΑΨΕ 'Στις', ημερομηνία, '/', μήνας, 'του', ΕΕ, έτος, ημέρα
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ ΝίκοςΜαλεβίτης