紧急求助,如何用fortran来写3n+1的问题

来源:百度知道 编辑:UC知道 时间:2024/05/24 13:08:26
如题,怎么用fortran来写3n+1的问题。
就是输入一个数x,如果x为奇数,则下一个数为3*x+1
如果x为偶数,则下一个数为x/2
一直算到1为止。
例子:输入3,得出
3,10,5,16,8,4,2,1
我要详细的代码。紧急求助。拜托了!!!

program main
integer n
write(*,*)'请输入一个整数'
read*,n
write(*,*)'所求数列为:'
call display(n)
end program

subroutine display(n)
integer n
do while( n/=1)
print*,n
if (mod(n,2)==1)then
n=3*n+1
else
n=n/2
endif
enddo
print*,n
end subroutine