47 lines
606 B
ObjectPascal
47 lines
606 B
ObjectPascal
function Gen: sequence of integer;
|
|
begin
|
|
var i := 3;
|
|
if (i mod 2 <> 0) then
|
|
begin
|
|
if (i mod 3 = 0) then
|
|
i *= 4;
|
|
yield i * 33;
|
|
|
|
if (i mod 3 = 0) then
|
|
yield i * 2;
|
|
|
|
yield i;
|
|
|
|
if (i mod 3 = 0) then
|
|
yield i * 2;
|
|
end
|
|
else yield i * 10;
|
|
|
|
if (i mod 12 <> 0) then
|
|
begin
|
|
i += 1
|
|
end
|
|
else
|
|
begin
|
|
if (i mod 4 = 0) then
|
|
yield 888
|
|
else
|
|
yield 777
|
|
end;
|
|
|
|
|
|
if (i mod 2 = 0) then
|
|
begin
|
|
for var x := 1 to 10 do
|
|
yield x;
|
|
end;
|
|
i += 1;
|
|
if (i mod 5 = 0) then
|
|
yield i;
|
|
end;
|
|
|
|
|
|
begin
|
|
var q := Gen();
|
|
q.Println;
|
|
end. |