One-dimensional cellular automata: Difference between revisions
m
→{{header|Sidef}}: minor code fixes
m (Added the Sidef language) |
m (→{{header|Sidef}}: minor code fixes) |
||
Line 3,565:
seq.gsub!(/(?<=(.))(.)(?=(.))/, {|s1,s2,s3| s1 == s3 ? (s1 ? 1-s2 : 0) : s2});
(x != seq) && (x = seq) || break;
}
{{out}}
Line 3,583:
<lang ruby>class Automaton(rule, cells) {
method
rule = sprintf("%08b", rule).
}
Line 3,590:
var previous = cells.map{_};
var len = previous.len;
cells = [rule.@[
previous.range.map { |i|
4*previous[i-1 % len] +
2*previous[i] +
previous[i+1 % len]
}]];
}
Line 3,613 ⟶ 3,612:
say "|#{auto}|";
auto.next;
}
{{out}}
|