quarta-feira, 18 de dezembro de 2013

18.05.02.06 Declare uma instrução

 

Exemplo de programa que imprimi seus argumentos:

 

 

$ include "seed7_05.s7i";       # Standard Seed7 library

 

const proc: main is func

local

    var string: stri is "";

begin

    for stri range argv(PROGRAM) do

      write(stri <& " ");

    end for;

    writeln;

end func;

 

 

 

A função argv(PROGRAM) retorna um array de string.

A instrução for itera sobre os "elementos do array de string" retornado pela função argv(PROGRAM).

A instrução for é sobrecarregada para vários tipos de collection (coleções);

Na biblioteca padrão da Seed7 (seed7_05.s7i) a instrução for é declarada como segue:

 

 

 

const proc: for (inout baseType: variable) range (in arrayType: arr_obj) do (in proc: statements) end for is func

local

    var integer: number is 0;

begin

    for number range 1 to length(arr_obj) do

      variable := arr_obj[number];

      statements;

    end for;

end func;

 

 

 

A sintaxe da instrução for é:

 

 

$ syntax expr: .for.().range.().to.().do.().end.for is    -> 25;

 

 

 

Podemos sobrecarregar a instrução for para se adaptar a qualquer coleção que venha a ser criada.

Devido a esta característica poderosa de Seed7, não precisamos de iterators.

 

 

 

 

 

 

 

 

 

 

Nenhum comentário:

Postar um comentário