Função que retorna se a hora é válida ou não
Alguém sabe porque esta funcção não retona falso;
cHora := := ´45:00´;
fTestaHora(cHora);
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
Curtidas 0
Respostas
Cristiam
01/03/2005
cHora := := ´45:00´;
Que tal por causa dessa linha? :wink:
GOSTEI 0
Massuda
01/03/2005
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).
GOSTEI 0
Emerson Nascimento
01/03/2005
o Massuda está certo. tente alterar a função para:
e veja qual será o retorno
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
GOSTEI 0
Jussimarrs
01/03/2005
o Massuda está certo. tente alterar a função para:
e veja qual será o retorno
:D-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;
:D [b:7c12ebfb29]Obrigado pelas Dicas.[/b:7c12ebfb29]
GOSTEI 0