Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Xavier Augusto

Só quero me expliquem oque o código faz, por que eu n

Recommended Posts

Eai galera tudo bem ?

 

Estou estudando e preciso validar a idade do usuário e saber se ele tem mais de 18 anos.

O código do calculo eu peguei pronto da internet e esta funcionando, mais eu não sei ao certo oque cada coisa faz.

Alguem poderia me explica como funciona o sistema de calculo dele ?

 


Console.WriteLine("Calculo para saber quantos anos você tem hoje \nInsira o ano do seu nascimento");
           int ano =  Convert.ToInt16(Console.ReadLine());
           Console.WriteLine("Insira o mês do seu nascimento");
           int mes = Convert.ToInt16(Console.ReadLine());
           Console.WriteLine("Insira o dia do seu nascimento");
           int dia = Convert.ToInt16(Console.ReadLine());

           try
           {
               //O código calcula a idade atual 
               DateTime dataNascimento = new DateTime(ano, mes, dia);

               int idadeAtual = DateTime.Now.Year - dataNascimento.Year;
               if (DateTime.Now.Month < dataNascimento.Month || (DateTime.Now.Month == dataNascimento.Month && DateTime.Now.Day < dataNascimento.Day))
               {
                   idadeAtual--;
               }

               if (idadeAtual >= 18)
               {
                   Console.WriteLine("Você é maior de idade");
               }

               else
            {
                       Console.WriteLine("Você é menor de ideda");
            }
               //fim do calculo da idade atual

               Console.WriteLine("Hoje você tem {0} anos", idadeAtual);

           }
           catch (Exception)
           {
               Console.WriteLine("Data Invalida");
           }

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu uso esse código para verificar a data e quantos anos que a pessoa tem.

 

<%
'Função que vai calcular a idade
function idade(datanascimento)
ano_atual=year(date())'Extrai ano do atual
mes_atual=month(date())'Extrai mes atual
ano_niver=year(datanascimento)'Extrai ano do nascimento
mes_niver=month(datanascimento)'Extrai mês do nascimento
dif_ano=cint(ano_atual)-cint(ano_niver)'Faz a diferença dos anos
dif_mes=cint(mes_atual)-cint(mes_niver)'Faz a diferença dos meses
'Verifica se a diferença dos meses é negativa, 
'se for e pq ainda não fez aniversário
if (dif_mes<0) then
idade=cint(dif_ano)-1
else
idade=dif_ano
end if
end function
%>

<%
if idade(cdate(rsApostador("1987-03-30")))>=18 then
response.Write("Data Aceita")
elseif idade(cdate(rsApostador("1987-03-30")))<18 then
response.Write("Data Não aceita")
end if
%>

 

Eu acho mais simples esse código do que esse que você postou.

 

Eu não sei se isso vai te ajudar, se te ajudar acho bom.

 

 

Abraço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.