program Hello;
var n,i,p:integer;
begin
readln(n);
p:=0;
while n<>0 do
begin
i:=i+(n mod 10);
p:=p+1;
n:=n div 10;
end;
writeln(p);
end.
Можно написать небольшую программку(p-количество выполненных циклов while)
А аналитически: с каждым циклом while у числа n убирают последнюю цифру(n:=n div 10). Всего 5 цифр, значит, цикл будет работать 5 раз:
при первом while будет число 1023
при втором-102
при третьем-10
при четвертом-1
1 не равно 0,т. е цикл проработает последний(пятый) раз
:5