Сообщение Re[7]: [забыл математику] Оптимизация алгоритма от 16.09.2022 19:38
Изменено 16.09.2022 20:40 xma
Re[7]: [забыл математику] Оптимизация алгоритма
Здравствуйте, Xander Zerge, Вы писали:
XZ>Ты свой туда же подложи, и посмотрим, это код не работает,
я согласен что мой код слегка чаще выдаёт — отличный от идеального результат, и что у Serge_Novikoff — оптимальнее код ..
но, также как и в моём коде из за проблем точности, также и в коде Serge_Novikoff — нередко возникает неверный (точнее не идеальный) результат (при чём весьма часто именно тот же неверный что и мой код выдаёт) ..
XZ>или ты просто эксплойтишь ограниченное количество знаков после точки в decimal.
я ничё не эксплойтю, тут проблема в самой точности хранения чисел в decimal и результатов проводимых операций над ними ..
XZ>Так-то шагов цены в виде периодической бесконечной дроби не бывает. Даже в крипте с меняющимся шагом.
ну как правильно говорит Xander Zerge — тут возможно стоит если нужна точность смотреть в сторону напр., (условного) "BigInteger" и тому подобных (которые обычно используют для банковских операций, для того чтобы не терять точность на float'ах или даже double'ах)
(могу предположить что в виде fixed point)
вот код рандома с моими test_optimal (и test_optimal2), если уж тебе так интересно по тестить ..
XZ>Ты свой туда же подложи, и посмотрим, это код не работает,
я согласен что мой код слегка чаще выдаёт — отличный от идеального результат, и что у Serge_Novikoff — оптимальнее код ..
но, также как и в моём коде из за проблем точности, также и в коде Serge_Novikoff — нередко возникает неверный (точнее не идеальный) результат (при чём весьма часто именно тот же неверный что и мой код выдаёт) ..
XZ>или ты просто эксплойтишь ограниченное количество знаков после точки в decimal.
я ничё не эксплойтю, тут проблема в самой точности хранения чисел в decimal и результатов проводимых операций над ними ..
XZ>Так-то шагов цены в виде периодической бесконечной дроби не бывает. Даже в крипте с меняющимся шагом.
ну как правильно говорит Xander Zerge — тут возможно стоит если нужна точность смотреть в сторону напр., (условного) "BigInteger" и тому подобных (которые обычно используют для банковских операций, для того чтобы не терять точность на float'ах или даже double'ах)
(могу предположить что в виде fixed point)
вот код рандома с моими test_optimal (и test_optimal2), если уж тебе так интересно по тестить ..
Скрытый текст | |
https://dotnetfiddle.net/
| |
Re[7]: [забыл математику] Оптимизация алгоритма
Здравствуйте, Xander Zerge, Вы писали:
XZ>Ты свой туда же подложи, и посмотрим, это код не работает,
я согласен что мой код слегка чаще выдаёт — отличный от идеального результат, и что у Serge_Novikoff — оптимальнее код ..
но, также как и в моём коде из за проблем точности, также и в коде Serge_Novikoff — нередко возникает неверный (точнее не идеальный) результат (при чём весьма часто именно тот же неверный что и мой код выдаёт) ..
XZ>или ты просто эксплойтишь ограниченное количество знаков после точки в decimal.
я ничё не эксплойтю, тут проблема в самой точности хранения чисел в decimal и результатов проводимых операций над ними ..
XZ>Так-то шагов цены в виде периодической бесконечной дроби не бывает. Даже в крипте с меняющимся шагом.
ну как правильно говорит Xander Zerge — тут возможно стоит если нужна точность смотреть в сторону напр., (условного) "BigInteger" и тому подобных (которые обычно используют для банковских операций, для того чтобы не терять точность на float'ах или даже double'ах)
(могу предположить что в виде fixed point)
вот код рандома с моими старыми test_optimal (и test_optimal2), если уж тебе так интересно их по тестить ..
в следующем посте — код исправил (тут
XZ>Ты свой туда же подложи, и посмотрим, это код не работает,
я согласен что мой код слегка чаще выдаёт — отличный от идеального результат, и что у Serge_Novikoff — оптимальнее код ..
но, также как и в моём коде из за проблем точности, также и в коде Serge_Novikoff — нередко возникает неверный (точнее не идеальный) результат (при чём весьма часто именно тот же неверный что и мой код выдаёт) ..
XZ>или ты просто эксплойтишь ограниченное количество знаков после точки в decimal.
я ничё не эксплойтю, тут проблема в самой точности хранения чисел в decimal и результатов проводимых операций над ними ..
XZ>Так-то шагов цены в виде периодической бесконечной дроби не бывает. Даже в крипте с меняющимся шагом.
ну как правильно говорит Xander Zerge — тут возможно стоит если нужна точность смотреть в сторону напр., (условного) "BigInteger" и тому подобных (которые обычно используют для банковских операций, для того чтобы не терять точность на float'ах или даже double'ах)
(могу предположить что в виде fixed point)
вот код рандома с моими старыми test_optimal (и test_optimal2), если уж тебе так интересно их по тестить ..
Скрытый текст | |
https://dotnetfiddle.net/
| |
в следующем посте — код исправил (тут
Автор: xma
Дата: 16.09.22
), и теперь он работает абсолютно всегда (даже когда код Serge_Novikoff'а не работает) Дата: 16.09.22