![]() |
Как считать числа точнее
На сях флоаты и даблы нехватат.
Там до 5 знаков после зпт и всё, а мне надо штук 15 хотябы, как сделать? |
на руби разрядность чисел ограничиваеться лишь оперативкой и свопом т.е. фактически не чем.
а если на C то придеться самому писать класс со всеми втекающими туда операциями. P.S. если тебе посчитать какие-то конкретные числа, то скинь мне в ПМ я на руби посчитаю |
http://ru.wikipedia.org/wiki/Длинная_арифметика
пример, вычисления числа Пи http://algolist.manual.ru/maths/count_fast/pi.php |
Цитата:
Или в ruby все действия делаются столбиком? |
DECIMAL
http://msdn.microsoft.com/ru-ru/library/system.decimal.aspx числа в диапазоне от 79228162514264337593543950335 до -79228162514264337593543950335 можно считать с точностью до 0,9999999999999999999999999999 |
Цитата:
Цитата:
|
Цитата:
Педставление чисел double обеспечиват относительную точность порядка 16 знаков после запятой. _http://ru.wikipedia.org/wiki/Число_двойной_точности Возможно, что у тебя проблемы с выводом нужного числа знаков после запятой? Код:
#include <iostream> |
Цитата:
printf("%.14f \n",a); он прав в паскале можно при выводе writeln('chislo',S:4:14) ,будет выводить 14 знаков после комы |
угу, да, но при подсчёте и флоат и дабл округляется. Например если вот что-то типа такого считать:
Код:
#include <iostream> |
Цитата:
Цитата:
Цитата:
|
Цитата:
|
Цитата:
|
|
Цитата:
|
Цитата:
|
ну ..... еще было решение у Forth-овцев ....
они работали с целыми числами всегда: система была проста допустим есть 2-ва числа 0.86 и 10.5 (они просто учитывали где находится точка) и действия выполняли с 86 и 1050 были решения как для строк(когда все числа постоянно находились в строковом выражении, так и для числового хранения! ... это если вдрух надумаешь написать библиотеку :D |
Наверное имеет место быть какая-то погрешность, как бы её посчитать?
Потому что виндовс калькулятор считает точнее - http://img534.imageshack.us/img534/5437/capturewv.jpg |
Цитата:
Хотя бы реализовать арифметику "столбиком" |
| Время: 14:25 |