Показать сообщение отдельно
  #6  
Старый 03.05.2008, 21:28
san-46 san-46 вне форума
Активный
 
Регистрация: 25.04.2008
Сообщения: 383
Репутация: 33
По умолчанию

Посмотри в отладке выражение
G[I, J]:= exp( (I-1)*Ln((Xpol[n+1] - Xpol[n-(J-1)]) / H) );
В массиве "Xpol" все элементы = 0. А Ln(0) дает ошибку.
"H" тоже равен нулю - значение этой переменной нигде не присваивается. Сам понимаешь, деление на 0 ни к чему хорошему не приводит.

И перегружать стандартные типы в Delphi совсем нет необходимости.
Обозначь все свои переменные Double, и все будет в порядке (выбрось ты эти перегрузки типа: _Real=real;, фигня все это).
Да и тип Real уже не катит - устаревший, оставленный для совместимости. Не хватает Double, применяй Extended (это уже за глаза, практически, для любых вычислений).
Ответить с цитированием