首先先搞清楚扫地机器人运行的抽象版,就是一个2D不随机行走,走过的地方要标记为干净,干净到一定程度停止。从设计角度要考虑面向对象编程,设定初始值与运行停止条件。也就是说我们要定义一个2D棋盘并将其网格化,然后定义一个棋子在上面游走。两者的基本联系是坐标,所以从继承的角度先定义坐标类型。围绕坐标标记或替换写出棋盘与棋子的类型,到时候调用就ok了。初始值与停止条件是解决实际问题必须考虑的,不能没法初始化运行,更不能完全停不下来。寻址算法效率什么的倒可以暂时放到后面去考虑或不考虑,让高级语言编译器代工。
坐标的属性很简单,给出x与y即可。同时可以给坐标的移动写一个函数,下一步的坐标要通过现有 …