|
|
|
Работа с маленькими числами большой точности
|
|||
|---|---|---|---|
|
#18+
Привет всем. Описание проблемы: При расчете обратной матрицы получаются коэффициэнты, значения которых находятся в диапазоне [0.0001....0.00000000001]. Но проблема в том, что такие значения VBScript округляет до нуля, поэтому в итоге получаем ошибку (в частности получаем невозможность расчета обратной матрицы). Вопрос: есть ли какие-нибудь средства, алгоритмы для работы с числами такой размерности? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.02.2005, 13:15:08 |
|
||
|
Работа с маленькими числами большой точности
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.02.2005, 14:10:45 |
|
||
|
Работа с маленькими числами большой точности
|
|||
|---|---|---|---|
|
#18+
Проблема в том, что я функцией Round в расчетах не пользуюсь. В расчетах VBScript сам округляет значение и впоследствии работает с "нулём". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.02.2005, 14:52:15 |
|
||
|
Работа с маленькими числами большой точности
|
|||
|---|---|---|---|
|
#18+
не пробовал, но на мой взгаляд, в данном случае надо изначально явно приводить к нужному типу с помощью функций приведения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.02.2005, 15:00:01 |
|
||
|
Работа с маленькими числами большой точности
|
|||
|---|---|---|---|
|
#18+
2Hibernate: По моему в VBScript вобще нет такого понятия как тип данных... 2Аlex(ander): Попробуйте ввести какой-нибудь коэффициент (например 1000000000), на который следует умножать все получившиеся коэффициенты... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.02.2005, 15:16:16 |
|
||
|
Работа с маленькими числами большой точности
|
|||
|---|---|---|---|
|
#18+
LKO2Аlex(ander): Попробуйте ввести какой-нибудь коэффициент (например 1000000000), на который следует умножать все получившиеся коэффициенты... Это, конечно, интересная идея. Но она осложняется тем, что умножив и сосчитав, то в конце всё равно придётся разделить на это значение и в итоге всё равно получим 0. Ведь в различных математических пакетах считается всё правильно и при любой размерности. Знает ли кто какие там применяются алгоритмы и способы обработки таких маленьких значений? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.02.2005, 15:20:19 |
|
||
|
Работа с маленькими числами большой точности
|
|||
|---|---|---|---|
|
#18+
Аlex(ander) ...коэффициэнты находятся в диапазоне [0.0001....0.00000000001]. такие значения VBScript округляет до нуля Вопрос: есть ли какие-нибудь средства, алгоритмы для работы с числами такой размерности?Вообще-то VBScript НЕ предназначен для математических вычислений (так же, как, например, Internet Explorer, "проигрывающий" VB-скрипты). С целью упрощения run-time library VBScript использует универсальный тип Variant для всех переменных и приводит преобразования типов независимо от желания программиста. Может, Вы ошиблись в именовании? Многие пакеты программ (MATLAB, Maple, Mathcad, ELCUT) используют VB for Applications, который позволяет явно указывать тип переменных. Но в этом случае должны быть доступны и функции форматирования результатов вычислений... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.02.2005, 15:59:06 |
|
||
|
Работа с маленькими числами большой точности
|
|||
|---|---|---|---|
|
#18+
моя плакать.... люди! какие типы и коэффициенты, у него число ЗНАЧАЩИХ цифр не влезет ни в один из типов как сделать? напиши класс, принимающий стринги и производящий арифметические действия над числами в виде строк по технологии сложения в столбик и все будет ОК, считаться будет медленно, зато точно ------------------ arbeit macht frei ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.02.2005, 16:07:43 |
|
||
|
Работа с маленькими числами большой точности
|
|||
|---|---|---|---|
|
#18+
на VBS обратную матрицу считаешь....чем продиктован выбор, чем RPG400 не подошёл или ПРОЛОГ, там это было бы ещё геморройнее :-) ------------------ arbeit macht frei ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.02.2005, 16:10:43 |
|
||
|
Работа с маленькими числами большой точности
|
|||
|---|---|---|---|
|
#18+
_bobна VBS обратную матрицу считаешь....чем продиктован выбор, чем RPG400 не подошёл или ПРОЛОГ, там это было бы ещё геморройнее :-) ------------------ arbeit macht frei А на каком языке (платформе) посоветуете работать с "крутой математикой"? Или написание класса, умеющего работать со стрингами, это и есть единственное решение в данной ситуации? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.02.2005, 16:30:44 |
|
||
|
Работа с маленькими числами большой точности
|
|||
|---|---|---|---|
|
#18+
_bobмоя плакать.... люди! какие типы и коэффициенты, у него число ЗНАЧАЩИХ цифр не влезет ни в один из типовКак же, по Вашему, обращали матрицы до сих пор? _bobчем RPG400 не подошёл или ПРОЛОГ, там это было бы ещё геморройнее :-)А вот это - в точку! Дело не в аппаратных возможностях процессоров, а в неправильно выбранном инструметарии. Аlex(ander)А на каком языке (платформе) посоветуете работать с "крутой математикой"?А что делают другие люди в этом случае? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.02.2005, 20:09:06 |
|
||
|
|

start [/forum/topic.php?fid=60&msg=32908595&tid=2168233]: |
0ms |
get settings: |
8ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
44ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
33ms |
get tp. blocked users: |
1ms |
| others: | 216ms |
| total: | 334ms |

| 0 / 0 |
