Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2007.07.08;
Скачать: [xml.tar.bz2];

Вниз

Как подсчитать сумму 1+1/1!+1/2!+1/3!+...   Найти похожие ветки 

 
Zagaevskiy ©   (2007-06-05 17:27) [0]

то есть я знаю, что это exp(1) или e. Знаю, что
е=2,718281828459045..., но я хочу посчитать с точностью 20-25 цифр за запятой, и не знаю, как это сделать (то есть программно) считать в ручную - абсурд.


 
Rial ©   (2007-06-05 17:40) [1]

Если проблема в том, что тебе не хватает точности Extended,
то можно реализовать с помощью вычисления "в столбик", храня
цифры в массивах поразрядно, или немного сжатом виде.
Производительность будет ужасной, но если это того стоит -
то почему бы и нет.
Нужно всего лишь реализовать беззнаковое сложение и деление,
как это делают обычно люди на бумаге.


 
Romkin ©   (2007-06-05 17:45) [2]

производительность ужасной не будет, если подумать и писать в массив только достоверные цифры ;)
Можно и не в массив, а сразу в файл - тогда будет считать, считать, считать...


 
Desdechado ©   (2007-06-05 17:49) [3]

И помнить, что от перемены мест слагаемых сумма меняется.
Суммирование нужно начинать с меньшего (по модулю) члена ряда.


 
Zagaevskiy ©   (2007-06-05 18:20) [4]


> Desdechado ©   (05.06.07 17:49) [3]
> И помнить, что от перемены мест слагаемых сумма меняется.
>
> Суммирование нужно начинать с меньшего (по модулю) члена
> ряда.

А как я узнаю меньший член ряда? Ведь ряд бесконечен, а когда будет достигнута нужная точность я не знаю.
И почему это сумма меняется - обьясните, буду рад.

О массиве я думал - опыт в принципе есть. Считал 2^n ,n > 100 и числа Фибоначчи до 32000 числа. Писал в Turbo Pascal 7 пару лет назад.


 
Inco   (2007-06-05 19:28) [5]

Вот число E:

http://abrau.durso.googlepages.com/e_10m.txt
(Осторожно, траффик!)

Первоисточник:
http://abrau.durso.googlepages.com/mathematicalconstants


 
Vlad Oshin ©   (2007-06-05 20:01) [6]


> А как я узнаю меньший член ряда?

посчитай
если точность до 10 знака, надо (любым методом) найти такой член, который не будет влиять на дальнейшую точность.
т.е. первая значащая цифра - вне точности

> когда будет достигнута нужная точность я не знаю

х возмем сразу много, проверим, будет ли 1/х! вне точности
если да, разделим х на 2 и повторим.


 
palva ©   (2007-06-05 20:11) [7]

Если очередной член меньше половины предыдущего (а в данном случае это выполняется начиная со третьего члена), то частная сумма отличается от суммы не больше чем на удвоенный последний член. То есть, если вы хотите посчитать, например, с точностью 0.0001, то можете суммировать до тех пор, пока очередной член не станет меньше 0.00005.


 
Zagaevskiy ©   (2007-06-06 10:21) [8]


>
> Inco   (05.06.07 19:28) [5]
> Вот число E:
>
> http://abrau.durso.googlepages.com/e_10m.txt

Собственно, мне нужно не только число Е , но и метод с помощью которого можно решать подобные задачи.

Если есть ещё предложения прошу высказывать.
ЗЫ Я так и не понял, почему :
> от перемены мест слагаемых сумма меняется.
> Суммирование нужно начинать с меньшего (по модулю) члена
> ряда


 
palva ©   (2007-06-06 11:38) [9]


> Я так и не понял, почему :
> > от перемены мест слагаемых сумма меняется.

Это проявляется, если числа представлены в формате с плавающей точкой.
Но вам потребуется самому реализовать формат числа с большим числом значащих цифр. Вряд ли вы будете при этом реализовывать формат с плавающей точкой - это слишком сложно. Вы наверно возьмете фиксированное число цифр после запятой, и с такими числами будете работать. В этом случае вам будет все равно, в каком порядке складывать члены.


 
Vendict ©   (2007-06-06 16:20) [10]

FGInt ?
или что-то с ним связанное .....



Страницы: 1 вся ветка

Форум: "Прочее";
Текущий архив: 2007.07.08;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.052 c
15-1181115204
Углук
2007-06-06 11:33
2007.07.08
Сколько строк кода вы можете написать в один присест?


15-1181182756
Slider007
2007-06-07 06:19
2007.07.08
С днем рождения ! 7 июня 2007 четверг


15-1181113512
ProgRAMmer Dimonych
2007-06-06 11:05
2007.07.08
MySQL, UTC и прочая нечисть


15-1181109783
Sergey13
2007-06-06 10:03
2007.07.08
Самарцы, помогите еще разок.


2-1181561995
Новичек
2007-06-11 15:39
2007.07.08
Undeclared identifier: Null





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский