Clique abaixo para nos ajudar
Login

Esqueci minha senha

Estamos no Facebook
Buscar
 
 

Resultados por:
 


Rechercher Busca avançada

Quem está conectado
14 usuários online :: Nenhum usuário registrado, Nenhum Invisível e 14 Visitantes :: 2 Motores de busca

Nenhum

[ Ver toda a lista ]


O recorde de usuários online foi de 468 em 1/3/2012, 10:43
Últimos assuntos
» URGENTE - Instalação do aplicativo
Hoje à(s) 08:51 por Douglas Pascini

» Conexão Sql Server
Ontem à(s) 12:18 por Douglas Pascini

» como fazer essa imagem clicavel
22/1/2017, 13:56 por flavio dos reis

» USAR REPORT FORM
20/1/2017, 15:00 por ImRicoh

» Impressora Ticket
20/1/2017, 08:25 por ImRicoh

» Visite meu canal no Youtube
20/1/2017, 00:45 por ImRicoh

» Protocolo de comunicação porta serial
19/1/2017, 16:48 por rodiney

» Bloquear edição do ListBox
17/1/2017, 23:38 por Dipaula

» Ajuda em Script VBS
16/1/2017, 11:22 por carlosdantasf

» automação do mozilla e chrome
15/1/2017, 12:16 por Handerson Mildroz

» Aplicação Android algoritmos de aprendizagem pseudocódigo
4/1/2017, 01:09 por diegoveloper

» COMO ESTÃO DESENVOLVENDO EM WEB?
3/1/2017, 10:21 por felipe.palucoski

»  Um For não enxerga outro no DataGrid! (VIsual Basic)
2/1/2017, 12:44 por Ana Waldila

» C# criar checkBox Transparente
28/12/2016, 12:26 por flavio dos reis

» Menu lateral exemplo em VFP
28/12/2016, 11:55 por mxavier

» dll pertocheck
23/12/2016, 13:47 por FERNANDOMATRELLA

» Rota de um arquivo
23/12/2016, 09:01 por Julio

» BANIMENTO DE USUARIO
22/12/2016, 12:48 por Marcos Guedes

» USAR WEBSERVICE NO VFP9
20/12/2016, 18:33 por FAF

» CALCULO
19/12/2016, 18:48 por David Valerio

URGENTE - Instalação do aplicativo

24/1/2017, 08:51 por Douglas Pascini

Bom dia. Estou com um problema, ao fazer a instalação (colocar os arquivo) do aplicativo na …

Comentários: 0

Conexão Sql Server

23/1/2017, 12:18 por Douglas Pascini

Estou mudando meu servidor, para uma máquina remota. Até ai perfeito, o problema acontece que …

Comentários: 0

USAR REPORT FORM

30/12/2016, 09:06 por AJC

Pessoal bom dia,
Estou com um grande problema, já pesquisei muita coisa sobre report form, mas o …

Comentários: 3

Impressora Ticket

15/11/2016, 09:20 por clima238

Bom dia,
Por favor alguém me explique porque o código abaixo imprime no ecrã em vez do printer: …

Comentários: 2

Visite meu canal no Youtube

20/1/2017, 00:45 por ImRicoh

VFP Unlimited


Comentários: 0

Estatísticas
Temos 6993 usuários registrados
O último usuário registrado atende pelo nome de azengaroth

Os nossos membros postaram um total de 12 mensagens em 6 assuntos

Calcular idade

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

Anexo Calcular idade

Mensagem por hugo em 12/2/2010, 16:58

cabelos

como comentou ai esta o algoritimo logico do codigo que fiz la em

calcule idade


Código:
RECEBER DATA DE NASCIMENTO
--SE DATA DE NASCIMENTO = OU MAIOR QUE DATA CORRENTE (CONDICAO 1)
-----MENSAGEM "VOCE NAO NASCEU"
--SE NAO FOR IGUAL OU MAIOR (ENTRETANTO DA CONDICAO 1)
-----DIA ATUAL = DATA DE NASCIMENTO
-----NR DE DIAS = 0
-----NR DE ANOS = 0
-----NR DE MESES = 0
-----FACA ENQUANTO DIA ATUAL FOR MENOR DE DT ATUAL (LOOP 1)
---------NUMERO DE DIAS = VALOR DO NR DE DIAS + 1
---------DATA ATUAL = VALOR DA DATA ATUAL + 1 DIA
---------ANO = AO ANO DA DATA ATUAL
---------SE O DIA DA DATA ATUAL = DIA DA DT DE NASCIMENTO (COND. 2)
---------------NR DE MES = VALOR DE MES + 1
---------------NR DE DIAS = 0
---------------SE NR DE MES = 12 (CONDICAO 3)
-----------------------NR DE ANOS = VALOR DE ANO + 1
-----------------------NR DE MES = 0
---------------FIM DA CONDICAO 3
---------FIM DA CONDICAO 2
----VA PARA LOOP 1
----MOSTRE O RESULTADO DE ANOS, MES, DIAS
--FIM DA CONDICAO 1

o codigo em foxpro ( pra relembrar caso alguem precise )

Código:
* by jocelem HUGO - CODIGO FREE - 11/02/2010
SET DATE BRITISH
SET CENTURY on
m.dtnasc=CTOD("06/08/1971")
IF m.dtnasc=>DATE()
  WAIT WINDOW "Voce nao nasceu!"
ELSE
m.diaatu=m.dtnasc
m.dias=0
m.anos=0
m.mes=0
DO WHILE m.diaatu<DATE()
  m.dias=m.dias+1
  m.diaatu=m.diaatu+1
  m.ano=RIGHT(DTOC(m.diaatu),4)
  IF VAL(left(DTOC(m.diaatu),2))=VAL(left(DTOC(m.dtnasc),2))
      m.mes=m.mes+1
      m.dias=0
      IF m.mes=12
        m.anos=m.anos+1
        m.mes=0
      ENDIF
  ENDIF
enddo
WAIT wind "Sua idade eh: " + ALLTRIM(STR(m.anos)) + " anos, " + ALLTRIM(STR(m.mes)) + " mes(es) e " + ALLTRIM(STR(m.dias)) + " dias!"
endif

_________________
"A tristeza é a falta de alegria, mais sem ela eu não poderia entender a alegria do fato de que a felicidade existe!"
Helio Leites - http://www.youtube.com/watch?v=3NUEXX_yOL0

hugo
Usuário 5 Estrelas
Usuário 5 Estrelas


Voltar ao Topo Ir em baixo

Anexo Re: Calcular idade

Mensagem por cabeludo em 13/2/2010, 09:34

Aproveitando a oportunidade, segue ai o código em C#...
Repare gasto mais linhas formatando o texto do que efetuando o cálculo afro
Código:
static void Main(string[] args)
{
    // Alguns testes
    Console.WriteLine(AgeCalc(DateTime.Now.AddDays(1)));
    Console.WriteLine(AgeCalc(DateTime.Now));
    Console.WriteLine(AgeCalc(DateTime.Now.AddDays(-5)));
    Console.WriteLine(AgeCalc(DateTime.Now.AddMonths(-5)));
    Console.WriteLine(AgeCalc(DateTime.Now.AddYears(-5)));
    Console.WriteLine(AgeCalc(DateTime.Now.AddMonths(-5).AddDays(-5)));
    Console.WriteLine(AgeCalc(DateTime.Now.AddYears(-5).AddMonths(-5)));
    Console.WriteLine(AgeCalc(DateTime.Now.AddYears(-5).AddMonths(-5).AddDays(-5)));

    Console.ReadLine();
}

static string AgeCalc(DateTime DataNascimento)
{
    // Para otimização, será armazenado numa variável temporária
    // a data atual, para não entranhar no .Net toda vez que
    // fizer uma comparação
    DateTime DataHoje = DateTime.Now;

    // A data de nascimento é posterior ao dia de hoje?
    if (DataHoje < DataNascimento)
        return "Você ainda não nasceu!";

    // Calcula a idade
    // Lembrando que DateTime, se inicializado com 0
    // terá como data: "01/01/0001"
    DateTime Idade = new DateTime(DataHoje.Subtract(DataNascimento).Ticks);

    // Compensando a diferença do DateTime
    int Ano = Idade.Year - 1;
    int Mes = Idade.Month - 1;
    int Dia = Idade.Day - 1;

    // Nasceu hoje!
    if (Ano == 0 && Mes == 0 && Dia == 0)
        return "Parabéns! Nasceu hoje e já usa o computador!";

    return PreparaStringResposta(Ano, Dia, Mes);
}

static string PreparaStringResposta(int Ano, int Dia, int Mes)
{
    // Preparação dos textos em plural ou singular das datas
    //
    // O valor entre '{' e '}' será utilizado mais tarde
    // pela função String.Format

    // Prepara texto plural/singular para "ANO"
    string AnoText;
    if (Ano == 0)
        AnoText = "";
    else if (Ano == 1)
        AnoText = " {0} ano";
    else
        AnoText = " {0} anos";

    // Prepara texto plural/singular para "MES"
    string MesText;
    if (Mes == 0)
        MesText = "";
    else if (Mes == 1)
        MesText = " {1} mes";
    else
        MesText = " {1} meses";

    // Prepara texto plural/singular para "DIA"
    string DiaText;
    if (Dia == 0)
        DiaText = "";
    else if (Dia == 1)
        DiaText = " {2} dia";
    else
        DiaText = " {2} dias";

    // Prepara a string de resposta
    string Resposta =
        "Sua idade é: " +
        AnoText +
        MesText +
        DiaText;

    return String.Format(Resposta, Ano, Mes, Dia);
}

cabeludo
Participa Bastante
Participa Bastante


Voltar ao Topo Ir em baixo

Anexo Re: Calcular idade

Mensagem por hugo em 13/2/2010, 19:56

cabelu

saquei as demais ideias la no post e cheguei neste

me pareceu mais eficiente


Código:

* by jocelem HUGO - CODIGO FREE - 17/02/2010
********************************************
dtnasc=CTOD("06/08/1971")
if dtnasc=>date()
  wait window "Voce nao nasceu!"
else
  meses1=(year(date())-year(dtnasc))*12
  meses2=0
  dias=0
  meses2=IIF(MONTH(dtnasc)<=MONTH(DATE()),MONTH(DATE())-MONTH(dtnasc),MONTH(dtnasc)-MONTH(DATE()))
  meses=meses1+meses2
  anos=int(meses/12)
  meses=IIF(anos>0,IIF(DAY(DATE())=>DAY(dtnasc),MOD(meses,INT(meses/12)),MOD(meses,INT(meses/12))-1),0)
  dias=IIF(DAY(DATE())=>DAY(dtnasc),DAY(DATE())-DAY(dtnasc),(DATE()-GOMONTH(DATE(),-1))+(DAY(DATE())-DAY(dtnasc)-1))
  meses=IIF(DAY(DATE())=>DAY(dtnasc),meses,meses-1)
  WAIT WINDOW "Sua idade é: " + allt(str(anos)) + " anos, " + allt(str(meses)) + " mes(es) e " + allt(str(dias)) + " dias!"
ENDIF
valeu

_________________
"A tristeza é a falta de alegria, mais sem ela eu não poderia entender a alegria do fato de que a felicidade existe!"
Helio Leites - http://www.youtube.com/watch?v=3NUEXX_yOL0

hugo
Usuário 5 Estrelas
Usuário 5 Estrelas


Voltar ao Topo Ir em baixo

Anexo Re: Calcular idade

Mensagem por hugo em 18/2/2010, 17:29

up, verificado bruno

_________________
"A tristeza é a falta de alegria, mais sem ela eu não poderia entender a alegria do fato de que a felicidade existe!"
Helio Leites - http://www.youtube.com/watch?v=3NUEXX_yOL0

hugo
Usuário 5 Estrelas
Usuário 5 Estrelas


Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo


 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum