реклама на сайте
подробности

 
 
> Точность вычисления с плавающей точкой ?
shkal
сообщение Aug 15 2011, 13:17
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 281
Регистрация: 29-04-08
Из: Москва
Пользователь №: 37 149



Имеем вычисление по простейшей формуле F=A*B/C.
A, B, C имеют тип long int, F - long double.
Строка F=(((long double)(А))*B )/С; при А=65535, В=2500000, С=5000002 даёт результат, совпадающий с виндовым калькулятором только до 9 знака.
Где я теряю точность?
Компилятор Микрочип С30, мк PIC24H.

Сообщение отредактировал shkal - Aug 15 2011, 13:18
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
sergeeff
сообщение Aug 15 2011, 16:41
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 481
Регистрация: 10-04-05
Пользователь №: 4 007



Цитата(shkal @ Aug 15 2011, 16:17) *
Имеем вычисление по простейшей формуле F=A*B/C.
A, B, C имеют тип long int, F - long double.
Строка F=(((long double)(А))*B )/С; при А=65535, В=2500000, С=5000002 даёт результат, совпадающий с виндовым калькулятором только до 9 знака.
Где я теряю точность?
Компилятор Микрочип С30, мк PIC24H.


А вас погрешность в одну миллиардную не устраивает? Или это чисто из спортивного интереса?
Go to the top of the page
 
+Quote Post



Closed TopicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 31st July 2025 - 00:05
Рейтинг@Mail.ru


Страница сгенерированна за 0.01341 секунд с 7
ELECTRONIX ©2004-2016