如何在两个for循环中使用break?

比特智慧

我编写了一个函数,该函数生成一个离散的随机变量并返回两个索引。似乎我的代码是错误的,因为返回的第一个索引始终为4。这是我的代码:

function inds(arr::Array{Float64, 2})
    probs = arr/sum(arr)
    u = rand()
    sum_prob = 0.0
    local ii, jj
    for i=1:size(arr)[1]
        for j=1:size(arr)[2]
            if sum_prob <= u < sum_prob + probs[i,j]
                ii = i
                jj = j
                break
            else
                sum_prob += probs[i,j]
            end
        end
    end
    return (ii, jj, probs[ii,jj])
end
norok2

最有可能的是,您确实需要打破这两个循环。执行此操作的标准方法是使用布尔值标志从两个循环中退出,例如:

function inds(arr::Array{Float64, 2})
    is_done = false
    probs = arr/sum(arr)
    u = rand()
    sum_prob = 0.0
    local ii, jj
    for i=1:size(arr)[1]
        for j=1:size(arr)[2]
            if sum_prob <= u < sum_prob + probs[i,j]
                ii = i
                jj = j
                is_done = true
                break
            else
                sum_prob += probs[i,j]
            end
        end
        if is_done:
            break
        end
    end
    return (ii, jj, probs[ii,jj])
end

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类常见问题

如何在Twig模板中的for循环中使用break或Continue?

来自分类Dev

在VBA For循环中使用两个以上范围

来自分类Dev

如何在while循环中使用openmp和break

来自分类Dev

如何在bash循环中合并两个范围?

来自分类Dev

我可以在“ for”循环中使用两个初始化语句吗?

来自分类Dev

使用pry-debugger时如何在循环中使用原始的“ break”

来自分类Dev

如何在for循环中使用invalidate()

来自分类Dev

如何在一个循环中分离两个不同的数组?

来自分类Dev

如何在单个python循环中执行两个for循环?

来自分类Dev

在具有两个期货的循环中使用CompletableFuture合并每个循环迭代

来自分类Dev

如何在while循环中连接两个值?

来自分类Dev

如何在MATLAB中使用两个计数器将每个循环的结果保存在for循环中

来自分类Dev

如何在for循环中使用awk?

来自分类Dev

如何在while循环中使用openmp和break

来自分类Dev

如何在一个循环中使用两个变量

来自分类Dev

如何在for循环中使用两个变量?

来自分类Dev

如何在循环中连接两个Twig变量

来自分类Dev

使用Swift在for循环中使用两个变量

来自分类Dev

如何在Matlab中使用两个样本循环数组?

来自分类Dev

如何在for循环中一次使用双端队列的两个连续元素?

来自分类Dev

在python中使用两个for循环

来自分类Dev

如何在For循环中使用2个变量?

来自分类Dev

如何在while循环的一个结果集中使用两个条件?

来自分类Dev

如何在循环中使用 fgets?

来自分类Dev

Python 列表理解,在两个 for 循环中使用 if 语句

来自分类Dev

如何在循环中使用 Collection

来自分类Dev

如何在 For 循环中使用 UIAlertController

来自分类Dev

如何在一个循环中组合/合并/交叉两个对象数组?

来自分类Dev

如何在while循环中连接两个变量

Related 相关文章

  1. 1

    如何在Twig模板中的for循环中使用break或Continue?

  2. 2

    在VBA For循环中使用两个以上范围

  3. 3

    如何在while循环中使用openmp和break

  4. 4

    如何在bash循环中合并两个范围?

  5. 5

    我可以在“ for”循环中使用两个初始化语句吗?

  6. 6

    使用pry-debugger时如何在循环中使用原始的“ break”

  7. 7

    如何在for循环中使用invalidate()

  8. 8

    如何在一个循环中分离两个不同的数组?

  9. 9

    如何在单个python循环中执行两个for循环?

  10. 10

    在具有两个期货的循环中使用CompletableFuture合并每个循环迭代

  11. 11

    如何在while循环中连接两个值?

  12. 12

    如何在MATLAB中使用两个计数器将每个循环的结果保存在for循环中

  13. 13

    如何在for循环中使用awk?

  14. 14

    如何在while循环中使用openmp和break

  15. 15

    如何在一个循环中使用两个变量

  16. 16

    如何在for循环中使用两个变量?

  17. 17

    如何在循环中连接两个Twig变量

  18. 18

    使用Swift在for循环中使用两个变量

  19. 19

    如何在Matlab中使用两个样本循环数组?

  20. 20

    如何在for循环中一次使用双端队列的两个连续元素?

  21. 21

    在python中使用两个for循环

  22. 22

    如何在For循环中使用2个变量?

  23. 23

    如何在while循环的一个结果集中使用两个条件?

  24. 24

    如何在循环中使用 fgets?

  25. 25

    Python 列表理解,在两个 for 循环中使用 if 语句

  26. 26

    如何在循环中使用 Collection

  27. 27

    如何在 For 循环中使用 UIAlertController

  28. 28

    如何在一个循环中组合/合并/交叉两个对象数组?

  29. 29

    如何在while循环中连接两个变量

热门标签

归档