de-vraag
  • Questions
  • Tags
  • Utilisateurs
Notifications
Récompenses
Inscription
Une fois inscrit, vous serez informé des réponses et des commentaires à vos questions.
Connectez-vous
Si vous avez déjà un compte, connectez-vous pour vérifier les nouvelles notifications.
Il y aura des récompenses pour les questions, réponses et commentaires ajoutés.
Détails
Source
Editer
Jeff Atwood
Jeff Atwood
Question

Comment calculer l'âge d'une personne en C# ?

Étant donné une DateTime représentant l'anniversaire d'une personne, comment puis-je calculer son âge en années ?

1742 2008-07-31T23:40:59+00:00 3
Yvette Colomb
Yvette Colomb
Question modifiée 21 avril 2018 в 5:48
Programmation
datetime
.net
c#
Vidéos populaires
COMMENT CALCULER VOTRE AGE EN C sharp.mp4
COMMENT CALCULER VOTRE AGE EN C sharp.mp4
il y a 4 ans
Calculer l'age est afficher dans une label
Calculer l'age est afficher dans une label
il y a 8 ans
How do I calculate someone's age in C#
How do I calculate someone's age in C#
il y a 6 ans
Age Calculator in C#
Age Calculator in C#
il y a 5 ans
C# Code for Age Calculate using Datetimepicker and TextBox in .net
C# Code for Age Calculate using Datetimepicker and TextBox in .net
il y a 6 ans
Calculer l’âge
Calculer l’âge
il y a 1 an
Atelier C#  Calcul Montant d'une facture
Atelier C# Calcul Montant d'une facture
il y a 2 ans
C# - Calculating Age Based on Month, Day and Year Using DateTimePicker and TextBox
C# - Calculating Age Based on Month, Day and Year Using DateTimePicker and TextBox
il y a 10 mois
12-Langage C | Un programme qui calcule l'âge de l'utilisateur
12-Langage C | Un programme qui calcule l'âge de l'utilisateur
il y a 2 ans
Exercice corrigé #2 : Programme qui affiche l'âge d'une personne à partir de sa date de naissance.
Exercice corrigé #2 : Programme qui affiche l'âge d'une personne à partir de sa date de naissance.
il y a 1 an
c# 24 peoo evenementiel les combobox  date naisssance + calcul Age درس سي شارب
c# 24 peoo evenementiel les combobox date naisssance + calcul Age درس سي شارب
il y a 1 an
C# Tutorial 64:  How do I calculate relative time (e.g. calculate someone's age)
C# Tutorial 64: How do I calculate relative time (e.g. calculate someone's age)
il y a 8 ans
Méthodes en C#
Méthodes en C#
il y a 3 ans
Écrire un programme C # Sharp qui affiche l’âge d’une personne et une remarque
Écrire un programme C # Sharp qui affiche l’âge d’une personne et une remarque
il y a 5 ans
Twenty C# Questions Explained, 14, How do I calculate someone's age in C#
Twenty C# Questions Explained, 14, How do I calculate someone's age in C#
il y a 8 ans
« Précédent
Suivant »
Cette question a 1 réponse en anglais, pour les lire connectez-vous à votre compte.
Solution / Réponse
Mike Polen
Mike Polen
4 août 2008 в 4:50
2008-08-04T16:50:06+00:00
Détails
Source
Editer
#8406079

Une solution simple et facile à comprendre.

// Save today's date.
var today = DateTime.Today;
// Calculate the age.
var age = today.Year - birthdate.Year;
// Go back to the year the person was born in case of a leap year
if (birthdate.Date > today.AddYears(-age)) age--;

Cependant, cela suppose que vous recherchez l'idée occidentale de l'âge et que vous n'utilisez pas le [calcul de l'Asie de l'Est][1].

[1] : https://en.wikipedia.org/wiki/East_Asian_age_reckoning

 MadSkunk
MadSkunk
Réponse modifiée 23 avril 2019 в 10:06
East Asian age reckoning - Wikipedia
en.wikipedia.org
2008
0
Michael Stum
Michael Stum
1er août 2008 в 9:46
2008-08-01T21:46:12+00:00
Détails
Source
Editer
#8406078

Une autre fonction, pas de moi mais trouvée sur le web et que j'ai un peu affinée :

public static int GetAge(DateTime birthDate)
{
    DateTime n = DateTime.Now; // To avoid a race condition around midnight
    int age = n.Year - birthDate.Year;

    if (n.Month < birthDate.Month || (n.Month == birthDate.Month && n.Day < birthDate.Day))
        age--;

    return age;
}

Juste deux choses qui me viennent à l'esprit : Qu'en est-il des personnes venant de pays qui n'utilisent pas le calendrier grégorien ? DateTime.Now est dans la culture spécifique au serveur je pense. Je n'ai absolument aucune connaissance sur la façon de travailler avec les calendriers asiatiques et je ne sais pas s'il existe un moyen facile de convertir les dates entre les calendriers, mais juste au cas où vous vous poseriez des questions sur ces Chinois de l'année 4660 :-)

Sai Gudigundla
Sai Gudigundla
Réponse modifiée 25 juillet 2017 в 5:11
72
0
Nick Berardi
Nick Berardi
1er août 2008 в 12:07
2008-08-01T12:07:19+00:00
Détails
Source
Editer
#8406077

La meilleure façon que je connaisse, à cause des années bissextiles et tout le reste, est la suivante :

DateTime birthDate = new DateTime(2000,3,1);
int age = (int)Math.Floor((DateTime.Now - birthDate).TotalDays / 365.25D);

J'espère que cela vous aidera.

Nick Berardi
Nick Berardi
Réponse modifiée 1er août 2008 в 3:26
36
0
Ajouter une question
Catégories
Toutes
Technologie
Culture / Loisirs
Vie / Arts
Science
Professionnel
Entreprises
Utilisateurs
Tous
Nouveau
Populaire
1
365
Enregistré il y a 1 jour
2
True Image
Enregistré il y a 1 jour
3
archana agarwal
Enregistré il y a 3 jours
4
Maxim Zhilyaev
Enregistré il y a 6 jours
5
adambotsfford adambotsfford
Enregistré il y a 1 semaine
DE
EL
ES
FR
ID
IT
JA
KO
NL
PT
RU
SK
TR
ZH
© de-vraag 2022
Source
stackoverflow.com
sous licence cc by-sa 3.0 avec l'attribution