Ir para conteúdo

POWERED BY:

Arquivado

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

SPARTA

Comparação entre duas datas

Recommended Posts

e ae pessoal....

 

estou com o seguinte problema e não encontrei uma solução para o problema:

 

criar um algoritmo capaz de ler duas datas e mostrar qual é a mais recente

 

se alguém puder me ajudar,

grato

Compartilhar este post


Link para o post
Compartilhar em outros sites

É fácil.Só seguir uma ordem de comparação (que é muito na cara,por sinal).

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ao comparar campo por campo, pode começar pelo ano, se for menor, termina a execução e assim por diante...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mágica? Macumba? Adivinhação? Comparação é o único jeito de ver se algo é maior ou não que outra coisa.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Uma macumbinha também resolve.

rs

 

Mágica? Macumba? Adivinhação? Comparação é o único jeito de ver se algo é maior ou não que outra coisa.

 

Brincadeiras de lado, o caminho é esse.

Compare primeiro o ano, depois o mes e depois o dia.

Compartilhar este post


Link para o post
Compartilhar em outros sites

e ae pessoal....

 

estou com o seguinte problema e não encontrei uma solução para o problema:

 

criar um algoritmo capaz de ler duas datas e mostrar qual é a mais recente

 

se alguém puder me ajudar,

grato

Cara, também sou novo no assunto, mas consegui fazer isso aí: o código tá em pascal, só que, quando você compilar, vai ter que digitar as datas com espaço. Ainda não aprendi como se faz o formato dd/mm/aaaa. Espero ter ajudado em alguma coisa.

program datas;

 

var
  dia_1, mes_1, ano_1, dia_2, mes_2, ano_2: integer;

begin
  write ('digite a primeira data  ');
  readln (dia_1, mes_1, ano_1);
  write ('digite a segunda data   ');
  readln (dia_2, mes_2, ano_2);
  if (dia_1 + mes_1 + ano_1) > (dia_2  + mes_2  + ano_2)
  then
  writeln ('Data mais recente   ',dia_1, mes_1, ano_1)
  else
  writeln ('Data mais recente   ',dia_2, mes_2, ano_2);
  readln ();
end.

Compartilhar este post


Link para o post
Compartilhar em outros sites

e ae pessoal....

 

estou com o seguinte problema e não encontrei uma solução para o problema:

 

criar um algoritmo capaz de ler duas datas e mostrar qual é a mais recente

 

se alguém puder me ajudar,

grato

Cara, também sou novo no assunto, mas consegui fazer isso aí: o código tá em pascal, só que, quando você compilar, vai ter que digitar as datas com espaço. Ainda não aprendi como se faz o formato dd/mm/aaaa. Espero ter ajudado em alguma coisa.

program datas;

 

var
  dia_1, mes_1, ano_1, dia_2, mes_2, ano_2: integer;

begin
  write ('digite a primeira data  ');
  readln (dia_1, mes_1, ano_1);
  write ('digite a segunda data   ');
  readln (dia_2, mes_2, ano_2);
  if (dia_1 + mes_1 + ano_1) > (dia_2  + mes_2  + ano_2)
  then
  writeln ('Data mais recente   ',dia_1, mes_1, ano_1)
  else
  writeln ('Data mais recente   ',dia_2, mes_2, ano_2);
  readln ();
end.

Ta funfando legal esse codigo?

 

achu que essa linha esta com erro if (dia_1 + mes_1 + ano_1) > (dia_2 + mes_2 + ano_2)

 

Se ( 31 + 12 + 2007= 2050 ) > ( 1 + 1 + 2008 = 2010 )

Imprima (data mais recente é 31 12 2007 )

Dá erro esse codigo seu ae

 

O Certo seria você comparar

Se ano1 > ano2

imprima dia1 , mes1 , ano1

senao

se ano2>ano1

imprima dia2 ,mes2,ano2

senao

Se mes 1>mes2

imprima dia1 , mes1 , ano1

senao

Se mes2>mes1

imprima dia2 ,mes2,ano2

senao

Se dia1>dia2

imprima dia1 ,mes1,ano1

senao

Se dia2>dia1

imprima dia2 ,mes2,ano2

senao

imprima DATAS IGuAis!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Poderia fazer de outro modo subtraindo valores

 

Se ano1 - ano2 > 0

imprima data1 e maior

Se ano1 - ano2 < 0

imprima data 2 é maior

.

.

.

 

Não sei si pode fazer calculos no "SE" si nao me engano pode..

 

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.