2

我是千里马的新手。我正在尝试编写一个循环,我正在检查是否满足某些条件然后退出循环。

cp:for i:1 step 1 thru 10 do
block(if(i>6) then break()
else
print(i,"is less than 6"));

我要输出:
1 小于 6
2 小于 6
3 小于 6
4 小于 6
5 小于 6
6 小于 6

但是当我运行上面的代码时:

打印 6 is less than 6 后,提示 Entering a Maxima break point。输入“退出;” 恢复。
并在输入退出后;它将再次显示上述味精

我希望代码完全从那个循环中出来,而不是要求输入 exit;

先感谢您..

4

1 回答 1

3

尝试return(i)代替break(). 此外,return仅从包含它的块返回,因此您需要block(...)在示例中删除 (无论如何都不需要)。我认为这有效:

cp: for i:1 step 1 thru 10 
      do if(i>6) then return(i) else print(i,"is less than 6");
于 2020-07-14T02:21:02.903 回答