Scilab - 索引不断变化的循环

Scilab - For loop with changing index

我在 Scilab 中使用非常简单的 for 循环时遇到问题。

max_inventory = 0;

for j=1:120

    S(j) = max_inventory + 1;

    if (S(j)<90) then
        cost(j) = 27;

        elseif (90<=S(j)<=110) then
        cost(j) = 25;

        else
        cost(j) = 22;
    end


    max_inventory = max_inventory + 1;


end

基本上,我希望 S 有一个索引 j。因此,经过 120 次迭代,将有 120 个不同的 S 值。即 S_1、S_2、...、S_120.

对于 if-else 条件,我希望 "cost" 具有不同的值,具体取决于 S(j) 是什么。

但是,我一直收到错误消息:

Undefined operation for the given operands. check or define function %b_3_s for overloading.

我不确定这个错误的真正含义。

错误在

if (90<=S(j)<=110)

您不能像这样编写此测试。写成这样

if (90<=S(j) && S(j)<=110)