xiaoxueji 发表于 2021-4-10 18:06:27

请教个角度层数对应的问题

计算一个公式,其中有k和α两个变量。如果角度α和层数k是一一对应的,K是从-4到5的十个整数,每层对应的α是0°或者8°,0°和80°分别是5层。顺序是不确定的,这种情况怎么样Fortran语言编程?

风平老涡 发表于 2021-4-10 22:36:17

每一个分别赋值
real :: a(-4:5)

a(-4) = 0.
a(-3) = 80.
a(-2) = 80.
a(-1) = 0.
a(0) = 0.
a(1) = 0.
a(2) = 80.
a(3) = 80.
a(4) = 80.
a(5) = 0.

xiaoxueji 发表于 2021-4-12 13:31:43

风平老涡 发表于 2021-4-10 22:36
每一个分别赋值
real :: a(-4:5)



分别赋值这个角度顺序不是确定的吗

风平老涡 发表于 2021-4-12 22:01:21

本帖最后由 风平老涡 于 2021-4-12 22:20 编辑

xiaoxueji 发表于 2021-4-12 13:31
分别赋值这个角度顺序不是确定的吗
那你需要的是随机赋值。
program test
implicit none
real :: a(-4:5), r
integer :: i, k=0, m = 0

call random_seed
do i = -4, 5
   call random_number(r)
   if(r > 0.5 .and. k < 5) then
      a(i) = 0.
      k = k + 1

    elseif(m < 5) then
      a(i) = 80.
      m = m + 1

   else
      a(i) = 0.

   end if
end do
print *, a
end program test

运行俩次结果
0.00000000       0.00000000       80.0000000       0.00000000       80.0000000       80.0000000       80.0000000       80.0000000       0.00000000       0.00000000

0.00000000       0.00000000       80.0000000       0.00000000       0.00000000       80.0000000       80.0000000       80.0000000       0.00000000       80.0000000

xiaoxueji 发表于 2021-4-13 22:16:11

风平老涡 发表于 2021-4-12 22:01
那你需要的是随机赋值。
program test
implicit none


好的好的 非常感谢
页: [1]
查看完整版本: 请教个角度层数对应的问题