Scilab Website | Contribute with GitLab | Mailing list archives | ATOMS toolboxes
Scilab Online Help
5.5.1 - Русский

Change language to:
English - Français - 日本語 - Português -

Please note that the recommended version of Scilab is 2024.0.0. This page might be outdated.
See the recommended documentation of this function

Справка Scilab >> Scilab > Управляющая логика > for

for

ключевое слово для циклов

Последовательность вызова

for variable=expression 
instruction;
instruction;
...
instruction;
end


for variable=expression do
instruction;
instruction;
...
instruction;
end

Аргументы

variable

переменная, по которой ведётся цикл;

expression

выражение, описывающее закон изменения переменной variable в заданных пределах; может быть вектором, матрицей, списком;

instruction

любые корректные инструкции Scilab.

do

ключевое слово, отделяющее блок определения переменной цикла variable от блока инструкций instruction

Описание

Используется для организации циклов по заданной переменной variable. Изменение переменной цикла variable описывается выражением expression, однако, в качестве expression может выступать вектор или матрица. В этом случае переменная variable последовательно от итерации к итерации принимает значения элементов вектора/матрицы от первого до последнего, столбец за столбцом.

Оператор двоеточие colon используется для создания вектор-столбцов с регулярным шагом между элементами и похож на традиционные циклы for:

for variable=n1:step:n2
instruction;
...
instruction;
end

Если expression является списком, то variable принимает значения списка одно за другим.

В соответствии с договорённостями по написанию кода в Scilab рекомендуется:

  • начинать новую инструкцию на новой строке;

  • писать не более одной простой инструкции на одной строке;

  • разбивать составные инструкции на множество строк.

Например, используйте:

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

а не:

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

Предупреждение: число символов, используемых для определения тела любой инструкции условия (if while for или select/case) должно быть ограничено 16К.

Примеры

// "традиционный" для циклов
n=5;
for i = 1:n
    for j = 1:n
        a(i,j) = 1/(i+j-1);
    end;
end
for j = 2:n-1
    a(j,j) = j; 
end; 
a
// циклы с уменьшающейся переменной цикла
for j= 4:-1:1
    disp(j);
end
 
//цикл по столбцам матрицы
for  e=eye(3,3)
    e
end  
for v=a
  write(6,v)
end
for j=1:n
  v=a(:,j)
  write(6,v)
end 
 
//цикл по элементам списка
for l=list(1,2,'example')
   l
end

Смотрите также

  • while — ключевое слово while
  • end — ключевое слово конца конструкции
  • do — ключевое слово для циклов
Report an issue
<< do Управляющая логика if >>

Copyright (c) 2022-2023 (Dassault Systèmes)
Copyright (c) 2017-2022 (ESI Group)
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Thu Oct 02 14:01:01 CEST 2014