问题:Write an iterator fromto such that the next two loops become
equivalent:
for i in fromto(n, m)
<body>
end
for i = n, m
<body>
end
Can you implement it as a stateless iterator?
解答:
function iter(m,i)
i = i + 1
if(i <= m) then
return i,m
end
end
function fromto(n, m)
return iter,m,n-1 --返回指针函数,不变量,控制变量
end
n=91
m=100
for i,j in fromto(n,m) do
print(i, m)
end
时间: 2024-10-13 11:30:48