Creo que debes aplicar el
Logaritmo (en base 10) al número del que deseas saber las cifras.
Log(1)=>0
Log(9)=>0,95...
Log(10)=>1
Log(11)=>1,04...
Log(99)=>1,99...
Log(100)=>2
...
Log(999999)=>5,999....
Log(1000000)=>6
...
Código Delphi
[-]
y := Trunc(Log10(x)) + 1;