Ir para conteúdo
Fórum Script Brasil
  • 0

Função Para Identificar Se O Horario é Pm Ou Am


Guest Amarildo

Pergunta

5 respostass a esta questão

Posts Recomendados

  • 0

Opa, teste isso ->

Se você tem um TDateTime e quer saber se é PM ou AM então ->

var
  T : TDateTime;
  PM : Boolean;
begin
  T:=Now;
  PM:=((T-Trunc(T)) > 0.5);
end;

Então se PM for true depois disso é que é PM, senão é AM.

Link para o comentário
Compartilhar em outros sites

  • 0

OLa Pessoal, consegui descrever o comando acima, só não consegui entender como fazer para saber se é PM ou AM, peço ajuda, pois não tenho conhecimentos profundos na materia, obrg pela atenção, aguardo por maiores informacoes, obrg

Link para o comentário
Compartilhar em outros sites

  • 0

A função PM retorna True se for PM e False se for AM ->

Function PM(T : TDateTime) : boolean;
begin
  Result:=((T-Trunc(T)) >= 0.5);
end;
if (PM(Now)) then ShowMessage('O horário atual é PM') else ShowMessage('O horário atual é AM');

Link para o comentário
Compartilhar em outros sites

  • 0

Complementando...

Por que testar se o valor decimal é maior que 0.5?

Porque o TDateTime é um Double, onde a parte inteira armazena a data e a parte fracionária armazena as horas. Então, 0.5 equivale à metade de 24:00h. Deste modo se for maior que 0.5, significa que a hora já passou do meio dia.

[]s

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,7k
×
×
  • Criar Novo...