【问题标题】:How to have an && condition in a for loop declaration in MATLAB?如何在 MATLAB 的 for 循环声明中添加 && 条件?
【发布时间】:2016-03-13 05:54:45
【问题描述】:

我想在 MATLAB 中编写这个语句。

for c = 1:c1-50 && c1+50:cmax;

但我收到以下错误:- "|| 和 && 运算符的操作数 必须可转换为逻辑标量 值。”

在不使用多个 for 循环的情况下编写此类语句的任何优雅解决方案?

工作代码是:-

for c = 1:c1-50;

然后是第二个 for 循环

for c = c1+50:cmax;

【问题讨论】:

    标签: matlab for-loop


    【解决方案1】:

    根据您的问题,我了解到您想要迭代两个不同的值范围。第一个范围是 [1:c1-50],第二个范围是 [c1+50:cmax]。

    这样做的正确方法是将两个范围连接在一起:

    for c = [1:c1-50, c1+50:cmax]   
    %put your code here  
    end
    

    另外两个cmets:

    1. 在 MATLAB 中,[1:c1-50] 和 [c1+50:max] 是两个整数向量。 在您的情况下,在它们之间执行逻辑运算不会达到预期的结果。

    2. 在两个逻辑数组之间进行逻辑运算时,只能使用“&”或“|”这一字符。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-01-02
      • 2021-02-18
      • 2013-01-27
      • 1970-01-01
      • 1970-01-01
      • 2015-10-24
      • 1970-01-01
      • 2012-09-27
      相关资源
      最近更新 更多