在 julia 中将两个嵌套的 for 循环合并为一个 for 循环

ReD*_*ReD 2 for-loop julia

我有两个 for 循环,我想将它们组合为一个嵌套循环:

我的循环是这样的:

for i=1:m
    for j=1:n
        .....
    end
end
Run Code Online (Sandbox Code Playgroud)

我试图将它们结合起来:

for ii = 1:n*m
    ai = ii%n 
    yi = ii % m
    if(ai == 0)
        ai=6
    end
    if(yi == 0)
        yi=5
    end
    println("ai=$ai , yi=$yi")
end
Run Code Online (Sandbox Code Playgroud)

所以我得到了这个结果:

ai=1 , yi=1
ai=2 , yi=2
ai=3 , yi=3
ai=4 , yi=4
ai=5 , yi=5
ai=6 , yi=1
ai=1 , yi=2
ai=2 , yi=3
ai=3 , yi=4
ai=4 , yi=5
ai=5 , yi=1
ai=6 , yi=2
ai=1 , yi=3
ai=2 , yi=4
ai=3 , yi=5
ai=4 , yi=1
ai=5 , yi=2
ai=6 , yi=3
ai=1 , yi=4
ai=2 , yi=5
ai=3 , yi=1
ai=4 , yi=2
ai=5 , yi=3
ai=6 , yi=4
ai=1 , yi=5
ai=2 , yi=1
ai=3 , yi=2
ai=4 , yi=3
ai=5 , yi=4
ai=6 , yi=5
Run Code Online (Sandbox Code Playgroud)

但我想得到这样的结果:

ai=1 , yi=1
ai=1 , yi=2
ai=1 , yi=3
ai=1 , yi=4
ai=1 , yi=5
ai=2 , yi=1
ai=2 , yi=2
ai=2 , yi=3
ai=2 , yi=4
ai=2 , yi=5
ai=3 , yi=1
ai=3 , yi=2
ai=3 , yi=3
ai=3 , yi=4
ai=3 , yi=5
ai=4 , yi=1
ai=4 , yi=2
ai=4 , yi=3
ai=4 , yi=4
ai=4 , yi=5
ai=5 , yi=1
ai=5 , yi=2
ai=5 , yi=3
ai=5 , yi=4
ai=5 , yi=5
ai=6 , yi=1
ai=6 , yi=2
ai=6 , yi=3
ai=6 , yi=4
ai=6 , yi=5
Run Code Online (Sandbox Code Playgroud)

我不知道如何更改我的代码以获得一些嵌套结果。是否可以将两个 for 循环组合为一个 for 循环,以便它们在运行时与两个循环相同?

Mic*_*ard 10

是的。

for i=1:m, j=1:n
    .....
end
Run Code Online (Sandbox Code Playgroud)

  • 为什么?--15 个字符 (2认同)