Elementary cellular automaton/Infinite length: Difference between revisions

(Added Go)
Line 623:
░▲░▲░▲░▲░░░░░░░░░░░░░░░░░░░░░░░░░▲░▲░▲░▲░
^C
</pre>
 
=={{header|Phix}}==
Uses 0-expansion either side
<lang Phix>string s = ".#.",
t=s, r = "........"
integer rule = 18, k, l = length(s), w = 0
for i=1 to 8 do
r[i] = iff(mod(rule,2)?'#':'.')
rule = floor(rule/2)
end for
for i=0 to 25 do
?repeat(' ',floor((55-length(s))/2))&s
for j=1 to l do
k = (s[iff(j=1?l:j-1)]='#')*4
+ (s[ j ]='#')*2
+ (s[iff(j=l?1:j+1)]='#')+1
t[j] = r[k]
end for
if t[1]='#' then t = '.'&t end if
if t[$]='#' then t = t&'.' end if
l = length(t)
s = t
end for</lang>
{{out}}
<pre>
" .#."
" .#.#."
" .#...#."
" .#.#.#.#."
" .#.......#."
" .#.#.....#.#."
" .#...#...#...#."
" .#.#.#.#.#.#.#.#."
" .#...............#."
" .#.#.............#.#."
" .#...#...........#...#."
" .#.#.#.#.........#.#.#.#."
" .#.......#.......#.......#."
" .#.#.....#.#.....#.#.....#.#."
" .#...#...#...#...#...#...#...#."
" .#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#."
" .#...............................#."
" .#.#.............................#.#."
" .#...#...........................#...#."
" .#.#.#.#.........................#.#.#.#."
" .#.......#.......................#.......#."
" .#.#.....#.#.....................#.#.....#.#."
" .#...#...#...#...................#...#...#...#."
" .#.#.#.#.#.#.#.#.................#.#.#.#.#.#.#.#."
" .#...............#...............#...............#."
" .#.#.............#.#.............#.#.............#.#."
</pre>
 
7,804

edits