C# - Calculando a idade
em anos, meses, dias, ...
![]() |
Hoje veremos como calcular a idade de uma pessoa e expressando essa idade em anos, meses, dias , minutos e segundos. |
Hoje vamos realizar uma tarefa bem simples: calcular a idade de uma pessoa.
Criando o projeto no VS 2017 Community
Usando o Visual Studio 2017 Community no menu File clique em New Project;
A seguir selecione Visual C# -> Windows Desktop;
Selecione o template Windows Forms App(.NET Framework);
Informe um nome a seu gosto. Para o exemplo vou informar CShp_CalculaIdade;
![]() |
No formulário Form1.cs inclua os seguintes controles a partir da ToolBox:
Disponha os controles conforme o leiaute da figura abaixo:
A seguir vamos definir o código do formulário.
O método CalculaIdade() recebe a data de nascimento e calcula a idade em anos. Se o dia de nascimento for superior a data de hoje então devemos diminuir uma unidade da idade.
Funciona, mas vamos melhorar, expressando a idade em anos, meses, dias, minutos e segundos.
No formulário inclua mais um botão de comando - btnCalculaIdadeMaisPrecisa - e no seu evento Click inclua o código abaixo:
Executando o projeto e selecionando uma data e calculando a idade usando as duas abordagens teremos o seguinte resultado:
![]() |
Essas abordagens resolvem a maioria das necessidades de calcular a idade de uma pessoa.
Resolvido o problema ???
Não é bem assim, para cálculos mais precisos temos que considerar os anos bissextos. Fica como um exercício...
Pegue o
projeto aqui :
CShp_CalculaIdade.zip
E a paz de Deus, que excede todo o entendimento, guardará os vossos corações e os vossos pensamentos em Cristo Jesus. Filipenses 4:7
Referências:
Super DVD Vídeo Aulas - Vídeo Aula sobre VB .NET, ASP .NET e C#
Super DVD C# - Recursos de aprendizagens e vídeo aulas para C#
Curso Fundamentos da Programação Orientada a
Objetos com VB .NET
Calculando a idade com precisão - Macoratti
Algumas funções com datas... - Macoratti
Cálculo com datas e horas - Macoratti
VB .NET - Calculando a diferença entre duas datas ... - Macoratti