Les Snippets

Connexion

Determiner si une année est bissextile

Niveau requis pour utiliser/comprendre cette source : 1 ( Débutant )
Créé le 19/10/2006 08:55:50 et initié par Renfield [Liste]
Date de mise à jour : 23/10/2006 21:20:02
Vue : 32611
Catégorie(s) : Date & Heure
Langages dispo pour ce code :
- VB6, VBA
- C, C++
- C# 1.x, C# 2.x
- VB6, VBA, VBScript
- Windev
- VB6, VBA
- VB 2005, VB6, VBScript
- VB6, VBA
- Delphi 5
- Java
- SQL, SQL 2005
- VB 2005, VB 2008
- PHP 4, PHP 5
- Tcl



Langage : VB6 , VBA
Date ajout : 19/10/2006
Posté par Renfield [Liste]
DateMAJ : 23/10/2006
Public Function IsLeapYear(ByVal vzInput As Variant) As Boolean
Dim nYear As Integer
    If VarType(vzInput) = vbDate Then
        nYear = DatePart("YYYY", vzInput)
    ElseIf IsNumeric(vzInput) Then
        nYear = vzInput
    Else
        Exit Function
    End If
    IsLeapYear = IsDate(nYear & "-02-29")
End Function
Remarque :
possibilité de lui passer une date (la fonction considerera l'année de la date fournie)
ou de passer l'année :

a = IsLeapYear ( #10/19/2006# )
ou
a = IsLeapYear ( 2006 )
Langage : C , C++
Date ajout : 19/10/2006
Posté par Renfield [Liste]
DateMAJ : 20/10/2006
#define IsLeapYear(vYear)  ((!(vYear & 3) && (vYear % 100)) || !(vYear % 400))

Langage : C# 1.x , C# 2.x
Date ajout : 19/10/2006
Posté par MorpionMx [Liste]

DateTime.IsLeapYear(annee);

Langage : VB6 , VBA , VBScript
Date ajout : 19/10/2006
Posté par EBArtSoft [Liste]
DateMAJ : 19/10/2006

Public Function IsLeapYear(ByRef d As Variant) As Boolean
    Select Case VarType(d)
    Case vbDate: Dim f&: f = Year(d): IsLeapYear = ((f Mod 4 = 0) And (f Mod 100)) Or (f Mod 400 = 0)
    Case vbLong, vbInteger, vbByte:   IsLeapYear = ((d Mod 4 = 0) And (d Mod 100)) Or (d Mod 400 = 0)
    End Select
End Function

Langage : Windev
Date ajout : 19/10/2006
Posté par Elian Lacroix [Liste]
Info("bissextile ? "+DateValide(<AAAA>+"0229"))
Langage : VB6 , VBA
Date ajout : 19/10/2006
Posté par mortalino [Liste]
Function IsLeapYear(ByVal vYear As Variant) As Boolean
    If VarType(vYear) = vbDate Then
        If DateDiff("d", CDate("01/01/" & DatePart("YYYY", vYear)), _
                         CDate("31/12/" & DatePart("YYYY", vYear))) = 365 Then IsLeapYear = True
    ElseIf IsNumeric(vYear) Then
        If DateDiff("d", CDate("01/01/" & vYear), _
                         CDate("31/12/" & vYear)) = 365 Then IsLeapYear = True
    End If
End Function

Sub Exemple_Utilisation()
    MsgBox IsLeapYear(2004) ' retourne vrai
    MsgBox IsLeapYear(Date) ' retourne faux
End Sub
Remarque :
Encore une autre technique...
Langage : VB6 , VB 2005 , VBScript
Date ajout : 22/10/2006
Posté par labout [Liste]
DateMAJ : 23/10/2006

Function isBissext(annee)
Dim ddate 
    ddate = CDate("28/02/" & annee)

    If Month(ddate+1) = 2 Then
        isBissext = True
    Else
        isBissext = False
    End If
End Function

Langage : VB6 , VBA
Date ajout : 23/10/2006
Posté par PCPT [Liste]
DateMAJ : 23/10/2006
Function IsLeapYear(iYear%) As Boolean
    IsLeapYear = IsDate("29/02/" & CStr(iYear))
End Function

Langage : Delphi 5
Date ajout : 24/10/2006
Posté par cirec [Liste]
{Tout simplement}
If IsLeapYear(Annee) Then ...

Langage : Java
Date ajout : 04/03/2007
Posté par Ombitious_Developper [Liste]

import java.util.GregorianCalendar;
boolean estBessextile (int year) {
    return new GregorianCalendar ().isLeapYear (year);
}

Langage : SQL , SQL 2005
Date ajout : 29/03/2007
Posté par pifou25 [Liste]
CREATE FUNCTION IsLeapYear (@Annee AS int) 
RETURNS bit
AS
BEGIN
    Declare @Date29Fev AS Datetime
    Declare @Result AS bit
    SET @Date29Fev  = DATEADD(DAY, -1, Cast('01/03/'+Cast(@Annee AS varchar(4)) AS datetime))
    IF Day(@Date29Fev )=29    
        SET @Result =1
    ELSE
        SET @Result = 0
    return @Result
END

Remarque :
vérifié sous SQL server 2000 ça doit marcher également pour le 2005.
Langage : VB 2005 , VB 2008
Date ajout : 25/06/2008
Posté par gillardg [Liste]

'year est une année repréntée par 4 chiffres 

System.DateTime.IsLeapYear(year)

Langage : PHP 4 , PHP 5
Date ajout : 11/07/2008
Posté par JoJo738 [Liste]
function is_leap_year($year)
{
    if( ( $year % 100 == 0 && $year % 400 == 0 ) OR ( $year % 100 != 0 && $year % 4 == 0 ) )
    {
        return true;
    }
    return false;
}
Langage : Tcl
Date ajout : 27/07/2009
Posté par gersoo [Liste]
proc IsLeapYear1 {vYear} {
 set y3    [expr !($vYear & 3)]
 set y100 [expr {$vYear % 100}]
 set y400 [expr {$vYear % 400}]
 return [expr ($y3 != 0) && ($y100 != 0) || ($y400 == 0)]
}


Snippets en rapport avec : Bissextile, Leap, Année, Fevrier, Calendrier



Codes sources en rapport avec : Bissextile, Leap, Année, Fevrier, Calendrier

{JAVA / J2EE} CALCUL LE JOUR SUIVANT D'UNE DATE EN FONCTION DES ANNÉES BISSEXTILE ET LE NOMBRE DE JOURS DANS CHAQUE MOIS.
Calcule et affiche le jour suivant d'une date en fonction des années bissextile et le nombre de jour...

{Visual Basic, VB6, VB.NET, VB 2005} CALENDRIER SOUS VBA (EXCEL)
Ce code permet de sélectionner une date dans un calendrier Le nombre de jour par mois et défini Le...

{C / C++ / C++.NET} CALCUL AGE V2
Calcul l'age en fonction des saisies utilisateur (année, mois, jour naissance) Prend en compte les ...

{PHP} [CLASSE PHP] MINI CALENDRIER AVEC LES 12 MOIS AFFICHÉS
Voila ce petit script affiche 12 petits calendriers (1 par mois :D). La date du jour en cours est s...

{JAVA / J2EE} CALENDRIER EN JAVA (APPLET JAVA) POUR ANNONCER UN EVENEMENT (EXPOSITION) PREVU ENTRE UNE DATE DE DEBUT ET UNE DATE DE FIN
Applet java - calendrier pour annoncer un événement compris entre 2 dates avec un lien pointant sur ...

{Visual Basic, VB6, VB.NET, VB 2005} CALENDRIER VB6 ET HORLOGE ANALOGIQUE
ce calendrier s'inspire du calendrier type obtenue sous windows vista et 7 quand on clic dans la bar...

{PHP} CALENDRIER + AGENDA TRÈS SIMPLE (GERER LES JOURS FÉRIÉS ET LES JOURS SPÉCIAUX)
Salut, Voici un script très simple d'une agenda en ligne , au quelle on peut gérer les jours fériée...

{JAVA / J2EE} SÉLECTEUR DE DATES MULTIPLES, ORIGINE UHRAND
Voir la description d'origine J'ai retravaillé le source "SÉLECTEUR DE DATES MULTIPLES" proposé p...

{PHP} CALENDRIER DES RÉSERVATIONS EN PHP
calendrier des réservations en php, ou calendrier des événements, ou simple calendrier, ou date pick...

{Visual Basic, VB6, VB.NET, VB 2005} CALCUL DES JOURS OUVRÉS ET OUVRABLES
J'ai repris une source de Belegaer pour la réctualiser et l'adapter à VB 2008. Voici une méthode po...