var 
  s:string;
  num:???
  n:integer;
begin
  s:='12345678901234567890987654321013';
  n:=strto??(s) mod 24;
end;
num 如何定义?如何转换字符为数值型?

解决方案 »

  1.   

    strToFloat转换
    Single或Double类型
      

  2.   

    integer就是32位的,不过搂住的数字是要用64位的,64为整数大概是在400亿亿
      

  3.   

    没有看清楚,你这个数字还真的有点大
    有这个方法试试
    var
      s      : String;
      i,n    : integer;
    begin
      S := '12345678901234567890987654321013';
      n := 0;
      while Length(S)>7 do begin
        i := Strtoint(Copy(S,1,7));
        Delete(S,1,7);
        n := n * 1000000 + i;
        n := n MOD 24;
      end;
      if S<>'' then begin
        n := n * 1000000 + Strtoint(S);
        n := n MOD 24;
      end;
      //到这里时,n的值就是想要的结果
    end;如果被除数过请减少上面的7为6,或者5.....直到1