FOR循环不工作

17次(最近30天)
奥利维亚·瓦戈
奥利维亚·瓦戈 于30七月2020年20:​​58
评论: 莎亚摩根在2020年8月14日在13:06
For循环我试图运行只运行了219次,或在循环,而不是运行整个循环的最后一个变量。我想不通为什么。
EXANGLES = -34:1:184;
EYANGLES = deg2rad(EXANGLES);
EVSUB1 = 90;
对于I = 1:长度(EXANGLES)
如果EXANGLES(ⅰ)<90
EVANGLE1 = EVSUB1-FT126;
ELSEIFEXANGLES(ⅰ)== 90
EVANGLE2 = 90;
ELSEIFEXANGLES(ⅰ)> 90
EVANGLE3 = EVSUB1 + FT126;
结束
结束
EVSUB = [EVANGLE1,EVANGLE2,EVANGLE3];

0评论

登录发表评论。

答案(2)

莎亚摩根
莎亚摩根 在2020年7月31日在13:48
EXANGLES = -34:1:184;
EYANGLES = deg2rad(EXANGLES);
EVSUB1 = 90;
FT126 = 126;
对于I = 1:长度(EXANGLES)
如果EXANGLES(ⅰ)<90
EVSUB(ⅰ)= EVSUB1-FT126;
ELSEIFEXANGLES(ⅰ)== 90
EVSUB(ⅰ)= 90;
ELSEIFEXANGLES(ⅰ)> 90
EVSUB(ⅰ)= EVSUB1 + FT126;
结束
结束
EVSUB

1条评论

莎亚摩根
莎亚摩根 在2020年8月14日在13:06
如果这个回答您的问题,请接受 - 谢谢!

登录发表评论。


詹姆斯Tursa
詹姆斯Tursa 在2020年7月30日在21:10
索引你的答案。例如。,
如果EXANGLES(ⅰ)<90
EVANGLE1(ⅰ)= EVSUB1-FT126;
ELSEIFEXANGLES(ⅰ)== 90
EVANGLE2(ⅰ)= 90;
ELSEIFEXANGLES(ⅰ)> 90
EVANGLE3(ⅰ)= EVSUB1 + FT126;
结束
EVSUB = [EVANGLE1(:),EVANGLE2(:),EVANGLE3(:)];

3条评论

奥利维亚·瓦戈
奥利维亚·瓦戈 在2020年7月31日在13:35
执行此操作时出现错误:
“因为左边的指数并非与右侧的规模相适应无法执行任务。”
莎亚摩根
莎亚摩根 在2020年7月31日14:16时
这里有一个假设的情况来解释为什么这个答案是liited
I = 1
如果EXANGLES(1)<90,然后EVANGLE1(ⅰ)将与EVSUB-FT126填充
I = 2
如果EXANGLES〜<90,EVANGLE1(ⅰ)将被分配一个零。
I = 3
如果EXANGLES <90,然后EVANGLE1(ⅰ)将再次被分配一个值
因为你的EXANGLES变量的后面部分均大于90 - 这将导致许多非指定值EVANGLES1和EVANGLES2,这不会让他们要连接。
詹姆斯Tursa
詹姆斯Tursa 在2020年7月31日在17:31
真正。我忽略了。未分配的值将是0和长度就可以搞掂,但乞求你想要的输出什么问题?你想,有很多零的他们(在这种情况下,我们定的长度)三列,还是你想要别的东西?

登录发表评论。

标签