gpt4 book ai didi

algorithm - 反射(reflect)循环迭代器关于迭代次数中点的数学运算

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:17:04 27 4
gpt4 key购买 nike

假设我们有一个循环,索引变量 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 引入零。

关于algorithm - 反射(reflect)循环迭代器关于迭代次数中点的数学运算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52652309/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com