假设我们有一个索引变量n
从1到6的循环当我通过这个循环时,我想打印值
1
2
3
3
2
1
是否有一个优雅的数学运算(即避免
if
语句)可以实现这一点我知道如果我打印1 + modulo(n-1,3)
它会打印出来
1
2
3
1
2
3
但我希望下半场能逆转。如果有帮助的话,循环将始终有偶数个迭代我是用Fortran 90写的。
最佳答案
以下几点怎么样:
do i=1,n
print *, int(abs(i-n/2.0-0.5)+0.5)
end do
这将打印偶数
n
的预期结果,并为奇数n
引入零。