Section courante

A propos

Section administrative du site

Il est parfois pratique de savoir quel année possède 366 jours dans le calendrier grégorien. On appel s'est année, les années bissextile. A l'aide du code source MySQL suivant, vous trouverez la réponse que vous souhaitez :

  1. DROP FUNCTION IF EXISTS IsLeapYear;
  2. DROP PROCEDURE IF EXISTS MAIN;
  3. DELIMITER $$
  4.  
  5. CREATE FUNCTION `IsLeapYear`(CurrYear INT(5)) RETURNS  INT(5)
  6.     BEGIN
  7.        RETURN  (((CurrYear & 3) = 0) AND (((CurrYear MOD 100) <> 0) OR ((CurrYear MOD 400)=0)));
  8.     END;
  9. $$
  10.  
  11. DELIMITER $$
  12. CREATE PROCEDURE MAIN ()
  13. BEGIN
  14.       DECLARE I INT DEFAULT 1980;
  15. simple_loop: 
  16.       LOOP
  17.         SET I=I+1;
  18.         IF IsLeapYear(I) THEN 
  19.          SELECT I As "Year";
  20.         END IF;
  21.          IF I >= 2000 THEN
  22.             LEAVE simple_loop;
  23.          END IF;
  24.    END LOOP simple_loop;
  25. END $$
  26. CALL `MAIN`();

on obtiendra le résultat suivant :

+------+
| Year |
+------+
| 1984 |
+------+
1 row in set

+------+
| Year |
+------+
| 1988 |
+------+
1 row in set

+------+
| Year |
+------+
| 1992 |
+------+
1 row in set

+------+
| Year |
+------+
| 1996 |
+------+
1 row in set

+------+
| Year |
+------+
| 2000 |
+------+


Dernière mise à jour : Mardi, le 23 décembre 2014