循环结构
在 Plotter 里,任何表达式都可以写在矩阵里,对于一些普通函数来说,表达式会先被计算,其结果放入矩阵。而对于一些特殊函数来说,表达式不会先被计算,而是在函数内部逻辑中被计算。
例如实现循环结构的 while 函数、 until 函数和 for 函数。
while 型循环
while(a>=0,a=a-1,a)
while(a>=0, # 循环条件
a=a-1, # 循环内部逻辑
a) # while 函数的返回值
until 型循环
与 while 型循环的区别是处理逻辑会先被执行一次再进入循环,条件满足时才跳出循环
until(a<0,a=a-1,a)
until(a<0, # 跳出循环的条件
a=a-1, # 循环内部逻辑(至少被执行一次)
a) # until 函数的返回值
for 型循环
从 0 加到 100 的例子
for([a=1;b=0],a<=100,a=a+1,b=b+a,b)
for([a=1;b=0],a<=100,a=a+1,[
b=b+a
],b)
判断素数的例子
isPrime(n) = [ # 定义函数 isPrime
ans = true; # 赋值 true 给 ans
for(a=2, a<n/2, a=a+1,[ # for 循环
if([n%a == 0,[ # 分支结构
ans = false; # 赋值 false 给 ans
a = Infinity # 使 a 为无穷,跳出循环
]])
],
ans) # isPrime 函数返回值
]
PS
解释器打包为了 plotter.exe