Implémentation C++ moderne de la congruence de Zeller - algorithme historique calculant le jour de la semaine pour toute date avec précision mathématique.
Implémentation moderne en C++ de la congruence de Zeller, un algorithme mathématique historique développé en 1882 par Christian Zeller. Ce programme calcule avec précision le jour de la semaine pour n'importe quelle date du calendrier grégorien.
"L'élégance des mathématiques du 19ème siècle rencontrant la puissance de la programmation moderne"
- 🎯 Calcul précis - Détermination exacte du jour de la semaine
- 📅 Calendrier complet - Support de toutes les dates grégoriennes
- 🐸 Gestion des années bissextiles - Automatique et fiable
- ✅ Validation des dates - Vérification de la cohérence des entrées
- 🚀 Performance optimale - Calcul en temps constant
- 🎨 Interface intuitive - Saisie simple et résultats clairs
- q : Jour du mois (1-31)
- m : Mois ajusté (Mars=3, ..., Février=14)
- K : Année dans le siècle (année % 100)
- J : Siècle (année / 100)
g++ -o zeller main.cpp
# ou
clang++ -o zeller main.cpp./zeller Congruence de Zeller
===========================
Year = 2024
Month = 10
Day = 21
📅 Le 21/10/2024 est un Lundi ✅
Le programme a été rigoureusement testé avec des dates historiques :
| Date | Résultat | Validation |
|---|---|---|
| 14/07/1789 | Mardi | ✅ Prise de la Bastille |
| 20/07/1969 | Dimanche | ✅ Alunissage Apollo 11 |
| 01/01/2000 | Samedi | ✅ Passage au 21ème siècle |
| 29/02/2024 | Jeudi | ✅ Date bissextile |
| Code | Jour | Index |
|---|---|---|
| 0 | Dimanche | 0 |
| 1 | Lundi | 1 |
| 2 | Mardi | 2 |
| 3 | Mercredi | 3 |
| 4 | Jeudi | 4 |
| 5 | Vendredi | 5 |
| 6 | Samedi | 6 |
Congruence-de-Zeller/ ├── .gitignore ├── LICENSE ├── README.md └── zeller.cpp
Compilateur C++ : GCC ≥ 8.0, Clang ≥ 7.0, ou MSVC ≥ 2019
Bibliothèques : Aucune dépendance externe
Système : Multiplateforme (Windows, Linux, macOS)
Les contributions sont appréciées ! Voici comment participer :
- Vérifiez s'il existe déjà dans Issues
- Créez un nouveau ticket avec un titre descriptif
- Décrivez les étapes pour reproduire le bug
- Indiquez votre environnement (OS, version du compilateur)
- Respectez les C++ Core Guidelines
- Commentez les algorithmes complexes
- Maintenez une formatting cohérente
- Ajoutez des tests pour les nouvelles fonctionnalités
Ce projet est sous licence MIT - voir le fichier LICENSE pour plus de détails.
Résumé de la licence MIT :
- ✅ Usage commercial autorisé
- ✅ Modification autorisée
- ✅ Distribution autorisée
- ✅ Usage privé autorisé
- ✅ Aucune responsabilité
- ✅ Aucune garantie
GitHub: @Espy-Tech
LinkedIn: @Espy-Tech
1.0.0 (2024) - Version initiale avec implémentation complète
Christian Zeller (1822-1899) pour son algorithme génial
La communauté C++ pour les bonnes pratiques
Tous les contributeurs et testeurs
"Les mathématiques sont la reine des sciences et l'arithmétique est la reine des mathématiques." - Carl Friedrich Gauss