Первый способ:
Var n:longint;
Begin
Write('n = ');ReadLn(n);
n:=n*n;
if frac(Ln(n)/Ln(10)) > 0 then WriteLn(int(Ln(n)/Ln(10))+1)
else WriteLn(Ln(n)/Ln(10))
End.
Второй способ:
Var
n,k:longint;
Begin
Write('n = ');ReadLn(n);
k:=0;
n:=n*n;
While n > 0 do
Begin
k:=k+1;
n:=n div 10
End;
WriteLn(k);
End.