错误:非法使用保留关键字“if”(matlab)

时间:2015-11-13 06:10:39

标签: matlab loops if-statement for-loop

我有一个错误,结果是非法使用保留关键字if。非常感谢,非常感谢,提前谢谢

 for i=(start_point+1) : (maximum_size-1)

        if   t(i,2)<starty 

            {

            if  t(i-1,1) == t(i,1)  ||  t(i-1,2) == t(i,2) 

                sum1 = sum1+1;

            else
                sum1 = sum1+sqrt(2);
            end

            }


        elseif   t(i,2)==starty && f(i,1)>= maximum_size*0.5

               {

              if  t(i-1,1) ==t(i,1) || t(i-1,2)==t(i,2)
                sum1 = sum1+1;
                m=i;
            else
                sum1 = sum1+sqrt(2);
                m=i;
              end
              }
        else 
            continue

        end

    end

1 个答案:

答案 0 :(得分:1)

这很容易 - 你不能在matlab中使用{} C.

{ }大括号用于形成单元格数组。它们类似于       括号[ ],但保留嵌套级别。

  {magic(3) 6.9 'hello'} is a cell array with three elements.

  {magic(3),6.9,'hello'} is the same thing.  

  {'This' 'is' 'a';'two' 'row' 'cell'} is a 2-by-3 cell array.

分号结束第一行。 {1 {2 3} 4}是3个元素       单元格数组,其中元素2本身就是一个单元格数组。

大括号也用于单元格数组的内容寻址。       在这种情况下,它们的作用类似于括号,除了       返回单元格的内容。

一些例子:

X{3}X的第三个元素的内容。

X{3}(4,5)是这些内容的(4,5)元素。

X{[1 2 3]}是前三个逗号分隔的列表          X的元素。它与X{1},X{2},X{3}相同并且有意义          在[]{}内,或在函数输入或输出列表中(参见LISTS)。

您可以重复嵌套单元格的内容寻址       X{1}{2}是单元格第二个元素的内容       在X的第一个单元格内。

这也适用于嵌套       结构,如X(2).field(3).name或单元格数组的组合       和结构,如Z{2}.type(3)

只需删除{}然后重试

即可