Blame | Last modification | View Log | Download | RSS feed
if __name__ == '__main__':arrays = [[0,0,0,0,0],[0,0,0,0,1],[0,0,0,1,0],[0,0,0,1,1],[0,0,1,0,0],[0,0,1,0,1],[0,0,1,1,0],[0,0,1,1,1],[0,1,0,0,0],[0,1,0,0,1],[0,1,0,1,0],[0,1,0,1,1],[0,1,1,0,0],[0,1,1,0,1],[0,1,1,1,0],[0,1,1,1,1],[1,0,0,0,0],[1,0,0,0,1],[1,0,0,1,0],[1,0,0,1,1],[1,0,1,0,0],[1,0,1,0,1],[1,0,1,1,0],[1,0,1,1,1],[1,1,0,0,0],[1,1,0,0,1],[1,1,0,1,0],[1,1,0,1,1],[1,1,1,0,0],[1,1,1,0,1],[1,1,1,1,0],[1,1,1,1,1]]# Iterate through each possible initialization vectorfor array in arrays:# Calculate the resulting array up to 64 placesfor i in range(200):array.append((array[i] + array[i+1]) % 2)# Find equal consecutive arraysfor period in range(5,100):array1 = array[0:period]array2 = array[period:2*period]# If match, print out array and periodif array1 == array2:print array[0:5], '=', array1, "; Period =", periodbreak