我被要求做一个简单的排序算法,将6个数字的随机序列按数字顺序排序。但是,我被要求使用Barebones来做到这一点 - 这是一本在Computer Science, an Overview
一书中提出的理论语言。
可以找到有关该语言的一些信息here。
为了澄清,我是一名学生老师,并且一直在研究“迷你编程语言”及其在教学环境中的用途。我向我的导师建议我看一下准系统(语言),并询问我应该写什么样的例程。他提出了一种简单的排序算法。现在,从查看语言后,我无法理解如何在不使用数组和if
语句的情况下完成此操作。
交换变量值的代码是
while a not 0 do;
incr Aux1;
decr a;
end;
while b not 0 do;
incr Aux2
decr b
end;
while Aux1 not 0 do;
incr a;
decr Aux1;
end;
while Aux2 not 0 do;
incr b;
decr Aux2;
end;
然而,该语言没有提供<或者>运营商。
我可以使用什么作为解决方法?
答案 0 :(得分:4)
哦,来吧,开始考虑这个问题!
什么是阵列?变量列表。
所以Barebones没有if语句?这是循环。
继续做作业。
答案 1 :(得分:2)
有趣的运动。
我建议你先尝试实现以下内容:
由于程序应该精确排序6个整数,我想你可以假设它们在变量x1,x2,..,x6中。
最后我们需要:x1< = x2< = ...< = x6。