首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >并发循环超过2个变量

并发循环超过2个变量
EN

Stack Overflow用户
提问于 2015-07-08 12:12:37
回答 3查看 958关注 0票数 3

在Octave中是否有可能在同一时间内形成两个循环,例如:

代码语言:javascript
复制
(for i=0:10 && j=10:20)
  i;
  j;
  end
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2015-07-08 14:11:01

如果循环的长度相同,那么是的。不为人所知的是,对于非向量,一个for循环,在列上循环。所以,只要把你的向量放在一个矩阵中,每一个变量一行:

代码语言:javascript
复制
for r = [0:10; 10:20]
  printf ("1st is %2i; 2nd is %2i\n", r(1), r(2));
endfor

返回:

代码语言:javascript
复制
1st is  0; 2nd is 10
1st is  1; 2nd is 11
1st is  2; 2nd is 12
1st is  3; 2nd is 13
1st is  4; 2nd is 14
1st is  5; 2nd is 15
1st is  6; 2nd is 16
1st is  7; 2nd is 17
1st is  8; 2nd is 18
1st is  9; 2nd is 19
1st is 10; 2nd is 20
票数 4
EN

Stack Overflow用户

发布于 2015-07-08 14:25:29

在Matlab中,您可以对两个大小相同的输入数组使用arrayfun

代码语言:javascript
复制
>> arrayfun(@(x,y) x+y, 1:10, 10:10:100)
ans =
    11    22    33    44    55    66    77    88    99   110
票数 2
EN

Stack Overflow用户

发布于 2015-07-08 12:57:46

如果希望它们步进,那么使用一个计数器变量将它们作为数组引用:

代码语言:javascript
复制
j = 0:10;
i = 0:10;
for k = 1:11
    i(k);
    j(k);
end

但是您很可能需要使嵌套的for循环:

代码语言:javascript
复制
for i = 0:10
    for j = 0:10
        i;
        j;
    end
end
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31292315

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档