Дано вещественное число, нужно определить количество знаков после запятой

например 1234.234ответ 3никак не могу разобраться как выделить дробную часть и посчитать количество цифр
2 ответа

Program A1;
var
  a:real;
  s:string;
  n,k,i:integer;
begin
  read(a);
  s:=FloatToStr(a);
  for i:=1 to length(s) do begin
    if (s[i]='.') then begin
      k:=1;
      continue;
    end;
    if k=1 then n:=n+1;
  end;
  Write(n);
end.


не через строки давно бы сделал) максимум trunc и frac
var
a,b,c,n,i:integer;
ch1,ch2,raz:real;
begin
  b:=0;
   i:=0;
   readln(ch1);
    a:=trunc(ch1);
     while a<>0 do
      begin
  a:=a div 10;
  b:=b+1;
      end;
 writeln(b-1);
  raz:=ch1;
   while raz<>0 do
    begin
     raz:=frac(ch1);
      if raz<>0 then
       begin
        ch1:=ch1*10;
        i:=i+1;
       end
      else writeln(i);
    end;
end.
вот написал считает порядок и количество знаков после запятой на больших числах врет со вторым значением