program main
implicit none
real(kind=4)::s=0
integer(kind=4)::m=1
integer i,j
do i=1,10
do j=1,i
m=m*j
end do
s=s+real(1/real(m))
end do
write(*,*)s
stop
end
program main
implicit none
real :: s = 0
integer i,j,m
do i=1,10
m = 1 !//这里很重要
do j=1,i
m=m*j
end do
s=s+1.0/m
end do
write(*,*)s
end program main
楚香饭 发表于 2023-7-24 08:24
[mw_shl_code=fortran,true]program main
implicit none
real :: s = 0
kundada11 发表于 2023-8-2 19:11
新手提问,我想知道为什么m=1的赋值必须写在循环体中?
kundada11 发表于 2023-8-2 19:11
新手提问,我想知道为什么m=1的赋值必须写在循环体中?
necrohan 发表于 2023-8-2 23:21
因为阶乘从1开始
楚香饭 发表于 2023-8-3 08:55
因为每次阶乘,都从1开始
欢迎光临 Fortran Coder (http://bbs.fcode.cn/) | Powered by Discuz! X3.2 |