program DigitCounterString;
{$mode delphi}{$H+}
uses
SysUtils; // IntToStr
function CountDigitsString(value: Integer): Integer;
var
text: string;
begin
// Convert the number to a string
text := IntToStr(value);
// If negative, ignore the leading '-'
if (Length(text) > 0) and (text[1] = '-') then
Result := Length(text) - 1
else
Result := Length(text);
end;
var
number, digits: Integer;
begin
number := -12345;
digits := CountDigitsString(number);
WriteLn('Number: ', number);
WriteLn('Digit count (String method): ', digits);
end.
{
run:
Number: -12345
Digit count (String method): 5
}