Fortran Coder

标题: 关于算常数e的10000位数 大神来呀 [打印本页]

作者: wjy8888840    时间: 2014-9-26 04:56
标题: 关于算常数e的10000位数 大神来呀
最近看见这个代码,不清楚这个e是怎么算出来的,求解答或者共同探讨
代码见下: (数组的初附值都为0)

以及e的泰勒级数
[latex]e=\sum_{n=0}^{\infty}\frac{1}{n!}=\frac{1}{0!}+\frac{1}{1!}+\frac{1}{2!}+\frac{1}{3!}+\frac{1}{4!}+...[/latex]
[latex]e=\lim_{n\to\infty}\left ( 1+\frac{1}{n}\right)^{n}[/latex]


作者: 楚香饭    时间: 2014-9-26 09:38
这个应该是用
[latex]e=\sum_{n=0}^{\infty}\frac{1}{n!}=\frac{1}{0!}+\frac{1}{1!}+\frac{1}{2!}+\frac{1}{3!}+\frac{1}{4!}+...[/latex]

公式的。

通过除法,竖式加法等基本运算获得。(回忆一下小学的除法和加法)

有篇文章你可以参考,《4种计算自然常数e的方法及精度比较》
http://www.doc88.com/p-990521706366.html
作者: wjy8888840    时间: 2014-9-26 11:22
楚香饭 发表于 2014-9-26 09:38
这个应该是用

非常有用!
如果是用silverfrost  plato的话,对array出来的长度有没有限制呢?
作者: 楚香饭    时间: 2014-9-26 12:01
具体要看 Silverfrost Ftn95 的限定了,通常来说,数组的长度限定在 4294967296 左右
作者: wjy8888840    时间: 2014-9-26 15:11
楚香饭 发表于 2014-9-26 12:01
具体要看 Silverfrost Ftn95 的限定了,通常来说,数组的长度限定在 4294967296 左右 ...

compile只有write部分一直跳出来missing expression

什么情况 怎么解决呢
[Fortran] 纯文本查看 复制代码
open(60,file="e.txt")
write(60,'(1a)'),"e=2."
write(60,'(8x,77i1)')(ns(i),i=2,77)
write(60,'(80i1)')(ns(i),i=78,nk)
write(*,'(a)'),'The ten digital primes in e:'
write(60,'(a)'),'The ten digital primes in e:'
do i=2,nk-10
C i=2
tmp=0
if(ns(i).ne.0) then
do j=i,i+9
tmp=tmp*10+ns(j)
end do
nst=sqrt(tmp)
do it=2,nst
if (mod(tmp,it).eq.0) then
goto 13
end if
end do
13 if (it.gt.nst) then
write(*,'(i5,f15.1)'),i,tmp
write(60,'(i5,f15.1)'),i,tmp
end if
end if
end do

作者: 楚香饭    时间: 2014-9-26 15:19
需完整代码
作者: wjy8888840    时间: 2014-9-26 15:25
楚香饭 发表于 2014-9-26 15:19
需完整代码

  是少了什么,,求具体点,, 试了很多了,,
作者: 楚香饭    时间: 2014-9-26 15:40
你给出的只是部分代码,我无法帮你查看是什么问题。

我也没有能力根据部分代码,推测出所有代码。
作者: wjy8888840    时间: 2014-9-26 22:40
楚香饭 发表于 2014-9-26 15:40
你给出的只是部分代码,我无法帮你查看是什么问题。

我也没有能力根据部分代码,推测出所有代码。 ...

sorrysorry  这部分的已经想出来了!谢谢!!




欢迎光临 Fortran Coder (http://bbs.fcode.cn/) Powered by Discuz! X3.2