Visitantes que leram esse artigo, também visitaram:
  • Julio Greff
  • Ajax com a Mootools
  • PDF em PHP com FPDF – Parte 1
  • NIC.br opera nova cópia de servidor DNS raiz
  • Ganhando Dinheiro no Google Adsense


  • Aumentando a Biblioteca – Parte I

    Postado por Plinio Cruz em 28 de janeiro de 2004 na categoria Delphi, Programação | Seja o primeiro a comentar

    1 Estrela2 Estrela3 Estrela4 Estrela5 Estrela (2 votos, média: 5,00)
    Loading ... Loading ...

    Vamos começar uma série de artigos com funções muito usadas por programadores nas mais variadas aplicações. Se colocarmos todas elas em uma DLL, por exemplo, poderemos assim otimizar tempo e ganhar em rendimento no executável final.

    Vamos começar com três pequenas funções que envolvem operação e validação de tempo, vejamos:

    1 – OperaHora

    Descrição: Função que recebe uma hora inicial tipo string e comandos para efeturar uma operação e retorna a Hora modificada tipo string.

    Parâmetros:
    Hora,HMS,MaisOuMenos,Quantidade – Todos os parâmentros são tipo String.
    Hora: Hora que vai ser modificada.
    HMS: ‘H’ para modificar Hora, ‘M’ para modificar minuto e ‘S’ para modificar segundo.
    MaisOuMenos: ‘Mais’ para operação de soma e ‘Menos’ para operação de subtração.
    Quantidade: Quantidade a ser efetuada.
    Exemplo: OperaHora(’10:00:00′,’M',’Mais’,’10′) – Retorno: ’10:10:00′.

    Limitações: a ‘Hora’ tem que estar no formato ‘HH:MM:SS’, você não pode efetuar operações com horas maiores que 23 e  minutos e segundos maiores que 59. Nenhum valor pode ser negativo.

    function OperaHora(Hora: String;HMS: String;MaisOuMenos: String;Quantidade:String):String;
    var
      Prim : TDateTime;
      Opera: TDateTime;
    begin
      Prim := StrToTime(Hora);
      if (HMS='H') then Opera:= StrToTime(Quantidade+':00:00')
      else if (HMS='M') then Opera:= StrToTime('00:'+Quantidade+':00')
      else if (HMS='S') then Opera:= StrToTime('00:00:'+Quantidade);
      if (MaisOuMenos='Mais') then Result := TimeToStr(Prim+Opera)
      else Result := TimeToStr(Prim-Opera);
    end;

    2 – AnoBis

    Descrição: Função que retorna se uma ano é bissexto.

    Parâmetros: Ano – parâmetro tipo string.

    Exemplo: AnoBis(1972) – Retorno: False.

    Limitações: A entrada tem que ser tipo ‘integer’ e no formato de quatro algarismos AAAA.

    function AnoBis(Ano: Integer):Boolean;
    var
      Resto:Integer;
    begin
      Resto:=Ano mod 4;
      if Resto=0 then Result:=True
         else  Result:=False;
    end;

    3 – DiaSemana

    Descrição: Retorna o dia da semana por extenso.

    Parâmetros: Data – parâmetro tipo string (Formato: DD/MM/AAAA).

    Exemplo: DiaSemana(’25/12/2003′) – Retorno: ‘Quinta-Feira’.

    Limitações: Não existe limitações se respeitados os parâmetros.

    function DiaSemana(Data:Tdate): String;
      Const Dia: array [1..7] of String=('Domingo','Segunda-Feira','Terça-Feira','Quarta-Feira',
              'Quinta-Feira','Sexta-Feira','Sábado');
    begin
      Result:=Dia[DayOfWeek(Data)];
    end;

    Agora você guarda essas rotinas para acrescentar as próximas que iremos fazer. Até a próxima!

    Vídeo não pode ser exibido.

    Deixe seu comentário