红联Linux门户
Linux帮助

跟我学shell编程之shell版本的俄罗斯方块

发布时间:2009-04-13 22:48:00来源:红联作者:kevin_2009
[i=s] 本帖最后由 kevin_2009 于 2009-4-13 22:49 编辑 [/i]

其实我也不是很明白怎么在shell下编写俄罗斯方块,不过今天刚好有在网络上载到一个俄罗斯方块的源码,就共享上来,希望大家可以一起研究啦~~~~~
[attach]12776[/attach]
[attach]12775[/attach]
文章评论

共有 230 条评论

  1. tiefeiying 于 2009-06-05 16:53:22发表:

    看看

  2. 小普林斯 于 2009-06-05 11:39:52发表:

    (e:e2s

  3. yijunziran 于 2009-06-05 11:21:08发表:

    强人

  4. yuanyangliu 于 2009-06-03 23:49:03发表:

    发现在这源码还运行不了诶

  5. yuanyangliu 于 2009-06-03 23:46:39发表:

    太强了 接见一下

  6. freezhang8012 于 2009-06-02 21:55:11发表:

    学习 不停的学习 才是 王到 哈哈

  7. joker1988 于 2009-06-02 17:18:46发表:

    下来看看

  8. qw_delphi 于 2009-06-02 17:07:01发表:

    太厉害了,佩服!

  9. hill480480 于 2009-06-02 13:14:52发表:

    强人,多学习学习

  10. hantu 于 2009-05-30 01:56:37发表:

    唉,啥论坛,好好的图一贴上去全歪了(但进入编辑状态看却仍是正正的) ...

  11. hantu 于 2009-05-30 01:53:16发表:

    [i=s] 本帖最后由 hantu 于 2009-5-30 01:55 编辑 [/i]

    写这个代码的人功底很深,台港,2003年写的。
    大家学习也很不错,我就来简单地分析一下它的算法吧,先要搞懂方块的表示:
    box0到box6是七种不同方块的参数,分别是y、x坐标,如下所示:
    box0=(0 0 0 1 1 0 1 1)
    ┌─┬─┬─┬─┐
    │■│■│ │ │
    ├─┼─┼─┼─┤
    │■│■│ │ │
    ├─┼─┼─┼─┤
    │ │ │ │ │
    ├─┼─┼─┼─┤
    │ │ │ │ │
    └─┴─┴─┴─┘

    box1=(0 2 1 2 2 2 3 2 1 0 1 1 1 2 1 3)
    ┌─┬─┬─┬─┐ ┌─┬─┬─┬─┐
    │ │ │■│ │ │ │ │ │ │
    ├─┼─┼─┼─┤ ├─┼─┼─┼─┤
    │ │ │■│ │ │■│■│■│■│
    ├─┼─┼─┼─┤ ├─┼─┼─┼─┤
    │ │ │■│ │ │ │ │ │ │
    ├─┼─┼─┼─┤ ├─┼─┼─┼─┤
    │ │ │■│ │ │ │ │ │ │
    └─┴─┴─┴─┘ └─┴─┴─┴─┘

    box2=(0 0 0 1 1 1 1 2 0 1 1 0 1 1 2 0)
    ┌─┬─┬─┬─┐ ┌─┬─┬─┬─┐
    │■│■│ │ │ │ │■│ │ │
    ├─┼─┼─┼─┤ ├─┼─┼─┼─┤
    │ │■│■│ │ │■│■│ │ │
    ├─┼─┼─┼─┤ ├─┼─┼─┼─┤
    │ │ │ │ │ │■│ │ │ │
    ├─┼─┼─┼─┤ ├─┼─┼─┼─┤
    │ │ │ │ │ │ │ │ │ │
    └─┴─┴─┴─┘ └─┴─┴─┴─┘

    box3=(0 1 0 2 1 0 1 1 0 0 1 0 1 1 2 1)
    ┌─┬─┬─┬─┐ ┌─┬─┬─┬─┐
    │ │■│■│ │ │■│ │ │ │
    ├─┼─┼─┼─┤ ├─┼─┼─┼─┤
    │■│■│ │ │ │■│■│ │ │
    ├─┼─┼─┼─┤ ├─┼─┼─┼─┤
    │ │ │ │ │ │ │■│ │ │
    ├─┼─┼─┼─┤ ├─┼─┼─┼─┤
    │ │ │ │ │ │ │ │ │ │
    └─┴─┴─┴─┘ └─┴─┴─┴─┘

    box4=(0 1 0 2 1 1 2 1 1 0 1 1 1 2 2 2 0 1 1 1 2 0 2 1 0 0 1 0 1 1 1 2)
    ┌─┬─┬─┬─┐ ┌─┬─┬─┬─┐ ┌─┬─┬─┬─┐ ┌─┬─┬─┬─┐
    │ │■│■│ │ │ │ │ │ │ │ │■│ │ │ │■│ │ │ │
    ├─┼─┼─┼─┤ ├─┼─┼─┼─┤ ├─┼─┼─┼─┤ ├─┼─┼─┼─┤
    │ │■│ │ │ │■│■│■│ │ │ │■│ │ │ │■│■│■│ │
    ├─┼─┼─┼─┤ ├─┼─┼─┼─┤ ├─┼─┼─┼─┤ ├─┼─┼─┼─┤
    │ │■│ │ │ │ │ │■│ │ │■│■│ │ │ │ │ │ │ │
    ├─┼─┼─┼─┤ ├─┼─┼─┼─┤ ├─┼─┼─┼─┤ ├─┼─┼─┼─┤
    │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
    └─┴─┴─┴─┘ └─┴─┴─┴─┘ └─┴─┴─┴─┘ └─┴─┴─┴─┘

    box5=(0 1 1 1 2 1 2 2 1 0 1 1 1 2 2 0 0 0 0 1 1 1 2 1 0 2 1 0 1 1 1 2)
    ┌─┬─┬─┬─┐ ┌─┬─┬─┬─┐ ┌─┬─┬─┬─┐ ┌─┬─┬─┬─┐
    │ │■│ │ │ │ │ │ │ │ │■│■│ │ │ │ │ │■│ │
    ├─┼─┼─┼─┤ ├─┼─┼─┼─┤ ├─┼─┼─┼─┤ ├─┼─┼─┼─┤
    │ │■│ │ │ │■│■│■│ │ │ │■│ │ │ │■│■│■│ │
    ├─┼─┼─┼─┤ ├─┼─┼─┼─┤ ├─┼─┼─┼─┤ ├─┼─┼─┼─┤
    │ │■│■│ │ │■│ │ │ │ │ │■│ │ │ │ │ │ │ │
    ├─┼─┼─┼─┤ ├─┼─┼─┼─┤ ├─┼─┼─┼─┤ ├─┼─┼─┼─┤
    │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
    └─┴─┴─┴─┘ └─┴─┴─┴─┘ └─┴─┴─┴─┘ └─┴─┴─┴─┘

    box6=(0 1 1 1 1 2 2 1 1 0 1 1 1 2 2 1 0 1 1 0 1 1 2 1 0 1 1 0 1 1 1 2)
    ┌─┬─┬─┬─┐ ┌─┬─┬─┬─┐ ┌─┬─┬─┬─┐ ┌─┬─┬─┬─┐
    │ │■│ │ │ │ │ │ │ │ │ │■│ │ │ │ │■│ │ │
    ├─┼─┼─┼─┤ ├─┼─┼─┼─┤ ├─┼─┼─┼─┤ ├─┼─┼─┼─┤
    │ │■│■│ │ │■│■│■│ │ │■│■│ │ │ │■│■│■│ │
    ├─┼─┼─┼─┤ ├─┼─┼─┼─┤ ├─┼─┼─┼─┤ ├─┼─┼─┼─┤
    │ │■│ │ │ │ │■│ │ │ │ │■│ │ │ │ │ │ │ │
    ├─┼─┼─┼─┤ ├─┼─┼─┼─┤ ├─┼─┼─┼─┤ ├─┼─┼─┼─┤
    │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
    └─┴─┴─┴─┘ └─┴─┴─┴─┘ └─┴─┴─┴─┘ └─┴─┴─┴─┘

    (待续)

  12. wwl910 于 2009-05-26 03:12:49发表:

    不错啊
    有时间了实践上一下~!

  13. dingjing 于 2009-05-25 11:12:04发表:

    我也显示乱码

  14. duowan 于 2009-05-25 11:01:13发表:

    看看 哈哈

  15. tanlang009 于 2009-05-24 18:08:47发表:

    不过楼主的精神值得表扬,感谢楼主了,用这个学习shell编程不错。
    写这个源码的人功力不一般!

  16. lijiang 于 2009-05-23 16:51:33发表:

    have a look

  17. fsjml1234 于 2009-05-05 11:29:02发表:

    不错不错 也比我强多了

  18. hantu 于 2009-05-04 00:32:15发表:

    不错

  19. dingjing 于 2009-05-03 20:07:59发表:

    :0wmjh(1
    绝对的高手

  20. lly2086 于 2009-04-30 21:54:04发表:

    高手啊!!!

  21. aa65535 于 2009-04-30 14:17:38发表:

    玩玩试试。

  22. w417592279 于 2009-04-29 15:19:37发表:

    看起来有点粗糙 不过比我强很多

  23. l460618498 于 2009-04-26 13:24:20发表:

    高人哦

  24. whwstc 于 2009-04-21 16:48:54发表:

    好猛啊!!!

  25. li-0578 于 2009-04-21 16:29:28发表:

    360行,行行出状元!

  26. luckdai 于 2009-04-21 15:17:24发表:

    呵呵 谢谢

  27. maxwell_lee 于 2009-04-15 08:35:20发表:

    总是存在着一些有才的人。哈!

  28. kevin_2009 于 2009-04-14 13:10:59发表:

    3# ShinyGuo

    呃,我就不清楚了,很有可能你不是完全安装的linux,所以有些差某些东西???

  29. ShinyGuo 于 2009-04-14 10:51:02发表:

    在我机子上运行显示乱码

  30. Yutie 于 2009-04-14 00:03:05发表:

    还没到这个功力