Ver Mensaje Individual
  #7  
Antiguo 02-09-2016
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Reputación: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola.

Fijate si te sirve de este modo:
Código Delphi [-]
function DigitAtPos(Number: LongInt; Position: Byte): Integer;
var
  len: Integer;
begin
  Number := Abs(Number);
  len    := Trunc(ln(Number)/ln(10))+1;
  if (Number = 0) or (Position <= 0) or (Position > len) then
    Result := -1
  else
  begin
    Position := len - Position + 1;
    Result   := Number div Trunc(Exp(Ln(10)*(Position-1))) mod 10;
  end;
end;

Uso:
Código Delphi [-]
...
  Writeln(DigitAtPos(-1248935, 6)); //  -> 3

Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita