Felix 的魔方项目的进展

打印 被阅读次数

这位小朋友没玩过魔方,家里也没有魔方。但这都不妨碍这位逻辑能力超强的孩子实现一个(虚拟)数字魔方。

魔方有六个面,每面有9个色块,需要一个标识体系。他先提出行列分开的 indexing 方案,列 0,1,2,行 0,1,2。我告诉他咱们还需要一个线性的方案,如 0,1,2,...,8。这两个 indexing 我们都需要。

他一开始用很简单粗暴的方法建立两种 indexing 之间的映射,即一大堆的 if 和 else。我说有没有更好的办法。他进行了一番尝试(找 pattern)后,自己搞定了教科书般的整数除法加余数的算法。

建立完整六个面的模型有点 tricky,不是每个面都能遵循一致的 indexing。但 Felix 似乎没有任何困难。

接着照着初步建立的模型,render 了第一块红色块:

尝试第二块时,出了点小问题:

Felix 马上意识到了原因:“y never changed”。

下课时间到了。遗留的问题很自然地成为作业了。

 

登录后才可评论.