document.write('
Data hosted with ♥ by Pastebin.com - Download Raw - See Original
  1. ite=2
  2. l= [\'f = open("quineout"+str(ite)+".py", "w")\',
  3.     \'f.write("ite="+str(ite+1)+"\\\\n")\',
  4.     \'f.write("l="+ str(l)+"\\\\n")\',
  5.     \'from PIL import Image\',
  6.     \'def identity(n):\',
  7.     \'    M=[[255 for i in range(n)] for i in range(n)]\',
  8.     \'    for x in range(n): M[x][x]=0\',
  9.     \'    return M\',
  10.     \'def hyp(d):\',
  11.     \'    if d==2:\',
  12.     \'        return [[255,0,255,0],[0,255,0,255],[255,0,255,0],[0,255,0,255]]\',
  13.     \'    else:\',
  14.     \'        M,a = [],hyp(d-1)\',\'        for x in range(len(a)):\',
  15.     \'           for i in identity(2**(d-1))[x]: a[x].append(i)\',
  16.     \'        t,b=hyp(d-1),identity(2**(d-1))\',
  17.     \'        for y in range(len(t)):\',
  18.     \'            for n in t[y]:b[y].append(n)\',
  19.     \'        for m in a: M.append(m)\',
  20.     \'        for k in b: M.append(k)\',
  21.     \'        return M\',
  22.     \'\',
  23.     \'M=hyp(ite)\',
  24.     \'cube=Image.new("1", (len(M),len(M)),"white")\',
  25.     \'pix=cube.load()\',
  26.     \'for q in range(2**ite):\',
  27.     \'    for w in range(2**ite): pix[q,w]=M[q][w]\',
  28.     \'cube.save("hypercube"+str(ite)+".bmp","bmp")\',\'for a in l:\',
  29.     \'    f.write(a+"\\\\n")\',
  30.     \'f.close()\',
  31.     \'if ite < 11: execfile("quineout"+str(ite)+".py")\']
  32. f = open("quineout"+str(ite)+".py", "w")
  33. f.write("ite="+str(ite+1)+"\\n")
  34. f.write("l="+ str(l)+"\\n")
  35. from PIL import Image
  36. def identity(n):
  37.     M=[[255 for i in range(n)] for i in range(n)]
  38.     for x in range(n): M[x][x]=0
  39.     return M
  40. def hyp(d):
  41.     if d==2:
  42.         return [[255,0,255,0],[0,255,0,255],[255,0,255,0],[0,255,0,255]]
  43.     else:
  44.         M,a = [],hyp(d-1)
  45.         for x in range(len(a)):
  46.             for i in identity(2**(d-1))[x]: a[x].append(i)
  47.        
  48.         t,b=hyp(d-1),identity(2**(d-1))
  49.         for y in range(len(t)):
  50.             for n in t[y]:b[y].append(n)
  51.    
  52.         for m in a: M.append(m)
  53.         for k in b: M.append(k)            
  54.         return M
  55.  
  56. M=hyp(ite)
  57. cube=Image.new(\'1\', (len(M),len(M)),"white")
  58. pix=cube.load()
  59. for q in range(2**ite):
  60.     for w in range(2**ite): pix[q,w]=M[q][w]
  61. cube.save("hypercube"+str(ite)+".bmp","bmp")
  62. for a in l:
  63.     f.write(a+"\\n")
  64. f.close()
  65. if ite <11: execfile("quineout"+str(ite)+".py")
');