主题:新手上路
x554115737
[专家分:0] 发布于 2010-10-05 11:08:00
我以前没有接触过Fortran,但现在要用了,不得不自学,现在有个程序不会,希望各位帮我解答解答,谢谢!
1/1!+1/2!+1/3!+.....+1/10!这个程序怎么编?
回复列表 (共7个回复)
沙发
jstzhurj [专家分:4680] 发布于 2010-10-05 12:28:00
program main
implicit none
real(kind=8):: i,term=1.d0,sum=0.d0
do i=1,10
term=term/i
sum=sum+term
enddo
write(*,*) sum
end program
3 楼
cgl_lgs [专家分:21040] 发布于 2010-10-06 19:53:00
服了您了,人家把代碼都給了你了,竟然才給20分?如果您看不懂可以問問,看得懂就應該50分結貼啊。。。
4 楼
asymptotic [专家分:16630] 发布于 2010-10-07 00:25:00
代码再好好修改一下,可以给高分。
5 楼
jstzhurj [专家分:4680] 发布于 2010-10-07 07:38:00
[quote]代码再好好修改一下,可以给高分。[/quote]
缺少误差分析了?
6 楼
asymptotic [专家分:16630] 发布于 2010-10-07 09:16:00
您的程序给一个菜鸟足够了,但我有些“吹毛求痴”:
1. 根据 Fortran 标准,循环变量应该用 integer;
2. 求和从 2 开始就可以了;
3. 对于这种求和,可能出现“大数吃小数”的情形,某些情况下,
求和反过来进行,也许更能保证精度。
7 楼
jstzhurj [专家分:4680] 发布于 2010-10-07 09:33:00
那把你的拿出来分享一下,也让大家学习学习,老是藏着掖着不太好,还是对这种小程序不屑一顾?
我来回复