tasks a-s
This commit is contained in:
parent
47bf37c096
commit
b83f433714
12433 changed files with 156208 additions and 123 deletions
|
|
@ -0,0 +1,25 @@
|
|||
import random
|
||||
|
||||
printdead, printlive = '_#'
|
||||
maxgenerations = 10
|
||||
cellcount = 20
|
||||
offendvalue = '0'
|
||||
|
||||
universe = ''.join(random.choice('01') for i in range(cellcount))
|
||||
|
||||
neighbours2newstate = {
|
||||
'000': '0',
|
||||
'001': '0',
|
||||
'010': '0',
|
||||
'011': '1',
|
||||
'100': '0',
|
||||
'101': '1',
|
||||
'110': '1',
|
||||
'111': '0',
|
||||
}
|
||||
|
||||
for i in range(maxgenerations):
|
||||
print "Generation %3i: %s" % ( i,
|
||||
universe.replace('0', printdead).replace('1', printlive) )
|
||||
universe = offendvalue + universe + offendvalue
|
||||
universe = ''.join(neighbours2newstate[universe[i:i+3]] for i in range(cellcount))
|
||||
|
|
@ -0,0 +1,16 @@
|
|||
import random
|
||||
|
||||
nquads = 5
|
||||
maxgenerations = 10
|
||||
fmt = '%%0%ix'%nquads
|
||||
nbits = 4*nquads
|
||||
a = random.getrandbits(nbits) << 1
|
||||
#a = int('01110110101010100100', 2) << 1
|
||||
endmask = (2<<nbits)-2;
|
||||
endvals = 0<<(nbits+1) | 0
|
||||
tr = ('____', '___#', '__#_', '__##', '_#__', '_#_#', '_##_', '_###',
|
||||
'#___', '#__#', '#_#_', '#_##', '##__', '##_#', '###_', '####' )
|
||||
for i in range(maxgenerations):
|
||||
print "Generation %3i: %s" % (i,(''.join(tr[int(t,16)] for t in (fmt%(a>>1)))))
|
||||
a |= endvals
|
||||
a = ((a&((a<<1) | (a>>1))) ^ ((a<<1)&(a>>1))) & endmask
|
||||
Loading…
Add table
Add a link
Reference in a new issue