Как сформировать цикл for, который выполняет убывающий порядок в Scilab

Я пытался выполнить цикл спуска в Scilab следующим образом:

for i=7: 1 
 disp(i);
end

Но, видимо, это не сработало, и ошибок не было.

Это возможно? И если да, как это сделать?

1 ответ

Синтаксис

Как указано в документации для цикла, синтаксис for:

for variable=expression do instruction, ,instruction,end

Если expression является матрицей или вектором строки, variable принимает в качестве значений значения каждого столбца матрицы.

Ваш пример

Ваш for-loop использует expression 7: 1 в качестве expression, что приведет к действительному, но пустому вектору:

-->7:1
 ans =

 []

Затем цикл for-loop принимает каждое значение в векторе, а затем заканчивается, но поскольку ваш вектор пуст, он заканчивается напрямую. Таким образом, это допустимый синтаксис.

Рабочий пример

В документации приведен пример рабочего цикла уменьшения:

for j=4:-1:1
 disp(j);
end // decreasing loop

licensed under cc by-sa 3.0 with attribution.