Показать сообщение отдельно
  #6  
Старый 21.11.2012, 23:07
Аватар для poli-smen
poli-smen poli-smen вне форума
Профессионал
 
Регистрация: 06.08.2012
Адрес: Кривой Рог
Сообщения: 1,791
Версия Delphi: Delphi 7, XE2
Репутация: 4415
По умолчанию

Цитата:
Сообщение от SHIFT999
Это в принципе TChart такой гад, или я накосячил?
Скорее всего второе Я таких глюков не наблюдал.

Кстати в Delphi есть стандартная функция StringReplace для замены в строке вхождений одной подстроки на другую, благодаря чему код который я выше привёл можно упростить:
Заменяем это:
Код:
      s := formula;
      for i := Length(s) downto 1 do
      begin
        if s[i] = 'x' then
        begin
          Delete(s, i, 1);
          Insert(FloatToStr(x), s, i);
        end;
      end;
на единственную строку:
Код:
      s := StringReplace(formula, 'x', FloatToStr(x), [rfReplaceAll, rfIgnoreCase]);

Впрочем мне всё равно не нравится эта идея с вставками значений прямо в строку с формулой. Например таким способом не получится посчитать такое выражение: 'exp(x)'.
Ответить с цитированием