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)
我在 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)