পাইথন -> পিট, 385 345 চর
এটি দিয়ে কোনও পিট প্রোগ্রাম উত্পন্ন করা সম্ভব। আমি কেবল এলোমেলো পিক্সেল থামাতে পারতাম, তবে আমি "আকর্ষণীয়" প্রোগ্রামগুলি তৈরি করতে চেয়েছিলাম। ফাংশনটি m
একটি পিক্সেলের রঙ এঁকে দেয় এবং প্রতিটি পিক্সেল প্রতিবেশীর মধ্যে পুনরাবৃত্তি করে। এলোমেলো ব্লব আঁকার আরও ভাল উপায় আছে তবে যুক্তিসঙ্গত পদক্ষেপে এটি শেষ করতে টিউন করা হয়, তাই এটি গল্ফের পক্ষে যথেষ্ট যথেষ্ট। ফাংশন R(w,h,n)
স্বপক্ষে এন এ (সম্মুখের র্যান্ডম ব্লব W X জ ) সাদা ইমেজ, এবং পিপিএম বিন্যাসে ফলাফলের ছাপে।
আমি রঙগুলি কীভাবে উত্পন্ন করি তা সম্পর্কে আমি বিশেষত গর্বিত - এলোমেলো পছন্দগুলির জন্য 0 <= c < 20
,
`[0,192,255][int(x)]`for x in'0002212220200101121100'[c:c+3]
একক ট্র্যাক গ্রে কোডের মাধ্যমে পিট প্যালেটে বৈধ রঙের জন্য দশমিক কোড । অর্থাৎ, প্রতিটি রঙ 3 সংলগ্ন বিট দ্বারা প্রতিনিধিত্ব করা হয়, এবং প্রতিটি স্লাইস '0003...0'[c:c+3]
একটি পৃথক রঙ উপস্থাপন করে । যেহেতু এটি 3 টি বর্ণের 27 টি শব্দের সম্পূর্ণ তালিকা নয়, তাই আমি গ্রে কোডটি সন্ধানে সত্যই খুঁজে পেয়েছি।
from random import*
r=randint
def R(w,h,n):
M=[6]*h*w
def m(x,y,c,d):M[y%h*w+x%w]=c;t=r(0,15)*(r(0,d)<2);t&8and m(x+1,y,c,d+1);t&4and m(x-1,y,c,d+1);t&2and m(x,y+1,c,d+1);t&1and m(x,y-1,c,d+1)
while n:m(r(0,w),r(0,h),r(0,19),0);n-=1
print"P3 %s %s 255 "%(w,h)+' '.join(`[0,192,255][int(x)]`for c in M for x in'0002212220200101121100'[c:c+3])
কমান্ড দ্বারা উত্পাদিত নমুনা আউটপুট R(30,40,500)
আমদানি ব্যতীত, আমি এটিকে যথাযথ (অর্ধবৃত্ত মুক্ত) 1-লাইনার হিসাবেও লিখতে পারি:
import random
R=(lambda P,I,E,T:lambda w,h,n:E(w,h,I(w,h,n,lambda z,c,d,t:sum((((z,c),)*t*T(0,1)or m((z[0]+a,z[1]+b),c,d+1,T(0,d)>1)for a,b in((0,1),(1,0),(-1,0),(0,-1))),()))))(range,lambda w,h,n,m:dict(sum((m((T(0,w),T(0,h)),T(0,19),0,0)for _ in P(n)),())),lambda w,h,M:"P3 %s %s 255 "%(w,h)+' '.join(' '.join(`(x&1)*255+(x&2)*96`for x in map(int,'0001121110100202212200'[c:c+3]))for c in(M[z]if z in M else 6for z in((x,y)for y in P(h)for x in P(w)))),random.randint)
তবে এটি হাস্যকরভাবে ধীরে ধীরে (এবং প্রায় 100 টি চরিত্রের বেশি) ... যদিও আমি পুরোপুরি নিশ্চিত নই কেন (এবং এটির জন্য ভয়ানক ঝুঁকিতে নেই)।