GARANTIR DESCONTO

Fórum Função que retorna se a hora é válida ou não #270575

01/03/2005

0

Alguém sabe porque esta funcção não retona falso;

cHora := := ´45:00´;
fTestaHora(cHora);


function fTestaHora(cHora:String):Boolean;
var
   nHoraT,nMinutoT : Integer;
begin
   nHoraT   := StrToInt(Copy(cHora,1,2));
   nMinutoT := StrToInt(Copy(cHora,4,2));
   if (nHoraT > 23) then
     Begin
         Result := False;
     end;
end;



Jussimarrs

Jussimarrs

Responder

Posts

01/03/2005

Cristiam

cHora := := ´45:00´;


Que tal por causa dessa linha? :wink:


Responder

Gostei + 0

01/03/2005

Massuda

Tirando o que o cristiam observou, tem outro problema que é o fato da sua rotina fTestaHora ter valor de retorno indefinido, já que ela retorna False apenas no caso de nHoraT > 23; nos outros casos, o valor de retorno dela é indefinido (provavelmente será um valor aleatório).


Responder

Gostei + 0

01/03/2005

Emerson Nascimento

o Massuda está certo. tente alterar a função para:

function fTestaHora(cHora:String):Boolean; 
var 
  nHoraT,nMinutoT : Integer; 
begin 
  nHoraT := StrToInt(Copy(cHora,1,2)); 
  nMinutoT := StrToInt(Copy(cHora,4,2)); 
  Result := nHoraT <= 23;
end;


e veja qual será o retorno


Responder

Gostei + 0

01/03/2005

Jussimarrs

o Massuda está certo. tente alterar a função para:
function fTestaHora(cHora:String):Boolean; 
var 
  nHoraT,nMinutoT : Integer; 
begin 
  nHoraT := StrToInt(Copy(cHora,1,2)); 
  nMinutoT := StrToInt(Copy(cHora,4,2)); 
  Result := nHoraT <= 23;
end;
e veja qual será o retorno
:D-

:D [b:7c12ebfb29]Obrigado pelas Dicas.[/b:7c12ebfb29]


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar