Open Source WEB

2006-08-01 [Haskell] 入試問題(その11)

http://www.i.u-tokyo.ac.jp/edu/course/ci/pdf/ci-2006-programming-2nd.pdf の問題 4-1 である.

追加ルールをかませてある.

-- 4-1

cs41 :: CellSpace
cs41 = take 100 [ if count n == 3 then 1 else 0 | n <- [0..] ]

m41 :: StateFun
m41 = gen 53

a41 :: IO ()
a41 = printTransition 2000 501 $ iterate (extrarule . trans m41) cs41

a41 を評価してみると,

*Main> a41
.......#...#.##....#.##..##.#......#.##..##.#....##.#...#..........#.##..##.#....##.#...#........##.
######.##.##..##.##..#....######.##..#....####....###.#########.##..#....####....###.#######....
......#..#..#....#..#.###........#..#.###......##.....#..........#..#.###......##.....#........##..
#####.##.##.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....#
.....#..#..#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##...
####.##.##.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....##
....#..#..#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##....
###.##.##.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....###
...#..#..#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##.....
##.##.##.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....####
..#..#..#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##......
#.##.##.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....#####
.#..#..#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##.......
.##.##.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######
#..#..#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........
##.##.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.
..#..#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#
#.##.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.#
.#..#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#.
.##.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##
#..#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..
##.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##.
..#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#
#.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##.#
.#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#.
.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##.##
#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#..
.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##.##
#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#..
.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##.##
#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#..
.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##.##
#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#..
.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##.##
#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#..
.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##.##
#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#..
.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##.##
#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#..
.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##.##
#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#..
.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##.##
#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#..
.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##.##
#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#..
.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##.##
#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#..
.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##.##
#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#..
.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##.##
#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#..

初期パターンが右へ移動していき,あるところから動かなくなる. なるほど,これが, c0 を特別あつかいした結果なんですねぇ.

では,ただし書きを無視するとどうなるかな.後のほうの extrarule 関数を 使って,a0 を評価すると...

*main:Main> a41
.......#...#.##....#.##..##.#......#.##..##.#....##.#...#..........#.##..##.#....##.#...#........##.
######.##.##..##.##..#....######.##..#....####....###.#########.##..#....####....###.#######....
......#..#..#....#..#.###........#..#.###......##.....#..........#..#.###......##.....#........##..
#####.##.##.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....#
.....#..#..#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##...
####.##.##.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....##
....#..#..#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##....
###.##.##.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....###
...#..#..#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##.....
##.##.##.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....####
..#..#..#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##......
#.##.##.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....#####
.#..#..#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##.......
.##.##.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######
#..#..#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........
##.##.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.
..#..#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#
#.##.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.#
.#..#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#.
.##.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##
#..#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..
##.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##.
..#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#
#.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##.#
.#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#.
.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##.##
#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#..
###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##.##.
...#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#..#.
##.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##.##.#
..#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#..#..
#.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##.##.##
.#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#..#...
.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##.##.###
#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#..#....
##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##.##.###.
..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#..#....#
#.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##.##.###.#
.#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#..#....#.
.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##.##.###.##
#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#..#....#..
##....######.##.##....####....###.#########.##.##....####....###.#######....######.##.##.###.##.
..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#..#....#..#
#....######.##.##....####....###.#########.##.##....####....###.#######....######.##.##.###.##.#
.##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#..#....#..#.
...######.##.##....####....###.#########.##.##....####....###.#######....######.##.##.###.##.##.
##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#..#....#..#..
..######.##.##....####....###.#########.##.##....####....###.#######....######.##.##.###.##.##..
#........#..#..##......##.....#..........#..#..##......##.....#........##........#..#..#....#..#..#
.######.##.##....####....###.#########.##.##....####....###.#######....######.##.##.###.##.##...
.......#..#..##......##.....#..........#..#..##......##.....#........##........#..#..#....#..#..##.

今度はパターンが左へ左へと流れているようだ.

--nobsun


Name:
Comment:

There is no comment.

このサイトは、 IPA の「平成15年度オープンソフトウエア活用基盤整備事業」 の委託事業として開発されたKahuaで試験的に運用しております。

Copyright (c) 2004-2007 株式会社タイムインターメディア About Us