我想创建一个4x4数组,它只在fortran95中随机填充+1或-1。我找到了一个能生成数字的帖子:
program rand_test
use,intrinsic :: ISO_Fortran_env
real :: r(6)
integer :: i(6)
! call init_random_seed() would go here
call random_number(r)
i = -1 + FLOOR(3*r) ! n=-1 and m=1
print *, i
end program但是,这包括我不想要的0。是否有可能删除0,如果是,如何删除?
发布于 2015-11-28 16:19:05
“这基本上就是安德鲁·莫顿的建议。”下面是你想做什么的代码
program test_rand
implicit none
real ::r(4,4)
integer :: i(4,4)
! call init_random_seed() would go here
call random_number(r)
i = nint(r)*2-1 ! n=-1 and m=1
print *, i
end program发布于 2015-11-28 16:03:58
对于数组中的每个元素,随机生成0或1,乘以2,减去1。
https://stackoverflow.com/questions/33973335
复制相似问题