1 / 1 / 1
Регистрация: 01.03.2013
Сообщений: 20
|
||||||
1 | ||||||
Увеличение точности при подсчетах01.03.2013, 16:56. Показов 9489. Ответов 9
Метки нет (Все метки)
Есть полностью рабочая программа, она находит корень К из числа Х с точностью prec.
Работает все хорошо, но при подсчетах с дробовыми числами идет потеря во втором-третем знаке.
Просьба помочь, ибо как тут выкрутится я не знаю. точностьи 1Е-5 обычно хватает
0
|
01.03.2013, 16:56 | |
Ответы с готовыми решениями:
9
Возможное округление при нахождении 2-й производной. При повышении точности программа начинает возвращать 0. Увеличение точности БПФ Редкая ошибка при подсчетах Игнорирование Н/Д ячеек при подсчетах |
177 / 163 / 21
Регистрация: 12.02.2013
Сообщений: 410
|
|
01.03.2013, 17:16 | 2 |
С дробовыми числами вообще ухо востро держать нужно
Добавлено через 5 минут float замени на double или long double
0
|
1 / 1 / 1
Регистрация: 01.03.2013
Сообщений: 20
|
|
01.03.2013, 17:22 [ТС] | 3 |
при double в scanf("%f") f на что нужно заменить?
если на "е" то возникает другого рода непонятная проблема - число икс равное 0.25 программа воспринимает за число, которое меньше нуля...
0
|
177 / 163 / 21
Регистрация: 12.02.2013
Сообщений: 410
|
|
01.03.2013, 17:33 | 4 |
Baium, пробуй "%le" или "%lf". Я не помню)))
0
|
1 / 1 / 1
Регистрация: 01.03.2013
Сообщений: 20
|
|
01.03.2013, 17:36 [ТС] | 5 |
при doyble все равно выдает 7.071110е-1 т.е. тоже значнеие но в другом виде...
при лонг флоате 0.707111 все те же...
0
|
177 / 163 / 21
Регистрация: 12.02.2013
Сообщений: 410
|
|
01.03.2013, 17:40 | 6 |
Напиши, какие числа мне скормить твоей программулине, чтобы получить такой результат?
0
|
1 / 1 / 1
Регистрация: 01.03.2013
Сообщений: 20
|
|
01.03.2013, 17:42 [ТС] | 7 |
первое число, с окторого мы будет брать корень - 0.25
сам корень 4.4 ну а точность 1Е-5
0
|
177 / 163 / 21
Регистрация: 12.02.2013
Сообщений: 410
|
|
01.03.2013, 17:49 | 8 |
Тогда, могу сделать 2 предположения:
1. Ты гонишься не за тем числом. 2. Ошибка в логике программы. Поскольку увеличение точности в 2 раза не поспособствовало изменению результата
0
|
1 / 1 / 1
Регистрация: 01.03.2013
Сообщений: 20
|
|
01.03.2013, 21:01 [ТС] | 9 |
1.инженерный калькулятор показал что за тем числом.
2.программа идеально считала без дробей, но вот с дробями получается вот такое отставание. пр ичем при изменении точности результат меняется, просто 1Е-5 и так достаточно большая точность Добавлено через 3 часа 6 минут Ап, что, не кто не знает как решить эту дилему?
0
|
419 / 418 / 167
Регистрация: 28.11.2010
Сообщений: 1,183
|
||||||
01.03.2013, 21:14 | 10 | |||||
Вы теряете точность при вычислении суммы,скорее всего. И скорее всего, этот алгоритм не подходит для дробных степеней.
Да, и с вещественными не подходит abs, нужно использовать fabs.
0
|
01.03.2013, 21:14 | |
01.03.2013, 21:14 | |
Помогаю со студенческими работами здесь
10
Floating point overflow при подсчетах Программа при подсчетах через раз ошибается Mathcad ошибки в подсчетах Потеря точности при умножении Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |