手机浏览器扫描二维码访问
「哎呀,别卖关子了,赶紧说吧!
」
看着老爹一幅悠然闲适的样子我牙根儿都痒痒,如果不是害怕遭雷劈可能早就用鞋底招呼过去了。
「好吧好吧,那我就说吧。
其实要通过键值来避过switch目前我能够想到的有两种方法,其中一种比较取巧,另一种就是正儿经的通过计算得出来。
刚刚你们也说了,如果是对灰太狼进行上下移动,实质上是在对行数x进行加减,左右移动,是对列数y做加减,那我们定义一个二维数组,把要加减的量放在数组里面,然后通过键值把数组取出来就好了。
向上移动,x-1,也就是x(-1),y0;
向下移动,x1,y0;
向左移动,x0,y-1,也就是y(-1);
向右移动,x0,y1;
键值的排列是左37,上3,右39,下40,如果我们对它们进行减运算,得到的结果是左0,上1,右2,下3,正好可以作为数组的下标。
于是就可以声明一个偏移量数组:
intoffset[4][2]={{0,-1},{-1,0},{0,1},{1,0}};
我们知道了灰太狼当前的位置,也可以通过键值获取位置的改变量,那么下一个位置、下下个位置自然就能够确定了。
假设我们把移动这部分的逻辑定义成一个move函数,那么实现逻辑大概如下:
intmove(intkeycode)
{
intindex=keycode-37;
intx1=灰太狼当前位置xoffset[index][0];
inty1=灰太狼当前位置yoffset[index][1];
intx2=灰太狼当前位置xoffset[index][0]*2;
inty2=灰太狼当前位置yoffset[index][1]*2;
移动判断逻辑
}
x1,y1和x2,y2就是当前移动方向的下个位置,下下个位置的坐标,有了它们,实现功能应该就不是什么难事儿了吧?」
「这样……都行?」
我和小弦子都被老爹这波操作秀到了,真的特别让人无语。
就好像你想尽一切办法,使尽浑身解数都没有将一块大石头给搬起来,然而在这个时候某个人拿了几个滑轮和绳子,不费吹灰之力就大石头给搬起来了。
不仅是我和小弦子有这种感觉,就连之前陷入沉思的六叔叔也是好一阵无语,如果一定要用一个词语来形容我们此时此刻的心情,大概还是只有「卧槽」这两个字了。
但不得不是说的是,老爹的这种做法让人挑不出来任何的毛病来,而且简单易懂,实现起来也极为容易。
很显然,这并不是我,小弦子和六叔叔想要看到的结果,因为这和我们想象中的算法相差太大了!
算法难道不应该是经过一系列精密的计算后,最终得到想要的结果么?
「哈哈,你们别这样看着我,我之前声明过的,这种方法比较取巧。
而且作为一个合格的程序员,就是要用最简洁的代码实现最复杂的功能,因为简洁同时也意味着效率高。
」
老爹似乎是看穿了我们三个人的心思。
好吧,我承认他说得很有道理的样子,但是依然没有办法让我平静的接受,毕竟之前我为了考虑键值和位置移动偏移量的关系扣了那么久的头皮,让我如何能够接受这种毫无技术含量的答案?
小弦子和六叔叔没有说话,不过我猜他们和我想的应该是差不多。
「行了行了,那我就说说第二种方法吧,如果这种方法依然不能让你们满意,我就没有办法了!
他提出结婚,她点头答应了。但她提醒他虽然你说只是假结婚,但我真的给不了你什么。钱没有,爱也所剩无几。他却笑道没关系,这些我都有。然而婚后,她才发现他是个言而无信的小人,非但没收了她所有的工资,还逼着她天天对他说我爱你!...
她还懵懂纯洁,便已被他强势霸占。他是整个帝国最尊贵的男人,却偏偏独宠她一个人,甚至不惜以婚姻为牢,将她生生束缚!然而,在婚礼前夜,准新娘居然逃跑了。某出租屋内,浑身矜贵的男人从天而降,某个小女人被逼至角落,瑟瑟发抖。男人冷笑你要自己动手,还是我帮你?小女人摇头我错了...
穿越到了玩游戏成大神的游戏空间,金手指在手,主角光环傍身,狂拽吊霸天的穿越人生眼瞅着就要开始了!但是门派系统优惠大酬宾!超级抽奖系统,秘籍核弹,什么都有,五折大促销啊!各种属性的主角出售啊!家族废材型主角,恐怖如斯型主角,龙傲天型主角什么都有,童叟无欺!各种主角金手指跳楼大甩卖啊,买一送一,假一...
青春校园文学第一大神荣誉出品。平庸懦弱的学生宋保军,意外觉醒体内32重人格,人生从此开挂,一步步逆袭成为终极学霸的热血励志故事。有爆乳校花激萌萝莉清纯大长腿等绝色美女,也有颠倒黑白的口才,还有热血爆棚的打斗信公众号搜...
我加到一个陌生人的微信,发现竟然是我的班主任,而且她竟然对我...
网盘无敌,杀神屠魔!一个现代人穿越了附体在一落魄少年身上,在异界崛起。求收藏群号323404365...