نکته مهم: الان برنامه ها رو توی کامنت نذارین… فردا مسابقه رو اعلام می کنم و جواب ها رو اونجا بفرستین.
عناد من با سیستمهای هرمی بر می گرده به زمانی که یکهو دیدم چند تا از دوستان خوب نه فقط اون تو هستن، که دارن در سطح فلسفی هم ازش دفاع می کنن. سر این جریان یکسری از دوستام رو از دست دادم یا بهتر بگم فهمیدم یکسری آدم دوستام نیستن. از همون زمان دوست داشتم شروع کنم به نوشتن یکسری شبیه ساز هرمی ولی همیشه تنبلی کردم تا اینکه بالاخره یک ایمیل خوب دریافت کردم:
جادی جان لازم دارم بدونم اگر در یک سیستم هرمی، با یک نفر شروع کنیم و هر نفر در هر ماه فقط یک نفر رو بیاره تو و خودش هم بعد از سه ماه بره بیرون، در هر ماه چند نفر توی سیستم خواهند بود و چند نفر اونو ترک کردن. من خودم حساب کردم و در ماه ۲۷ جمعیت ایران پر می شه. آیا درست حساب کردم؟
هوم.. اول بگم که خیلی خفنه که اینو توی اکسل حساب کرده (: از توان ذهن من که خارجه. خواستم برنامه اش رو بنویسم (که منطقا باید یک تابع ریکرسیو میشد) ولی نتونستم و برای اینکه کم نیارم این برنامه رو نوشتم:
#!/usr/bin/python import sys people = [0] #people already in the scheme. peopleOut = 0 #people alerady left the scheme for month in range(1, int(sys.argv[1])): copypeople = people #cause we are changing the main array. so lets have to "for" loop on a copy of it for i in range(0, len(copypeople)): if (copypeople[i]<3): #does this person been here less than 3 months? people.append(0) #so let him bring a new commer to the end of array people[i]+=1 #one more month for this person if (copypeople[i]>3): #if been here more than 3 months people.pop(i) #take him out peopleOut +=1 #add one to people who have left the scheme #print people print month, peopleOut, len(people)
عرق شرم! یک آرایه دارم که هر عضوش یک نفر آدم است که عددش می گه چند ماهه توی این دکون است. بعد هر بار آرایه رو از اول تا آخر بررسی می کنم، اگر کسی هست به ازاش یک نفر رو به آرایه اضافه می کنم (عضو جدید) و ماه هایی که اینجا بوده رو هم یکی اضافه می کنم. اگر کسی ماه سومش است دیگه کسی رو نمی یاره و ماه بعد خارج می شه یا چنین چیزی ( عرق شرم مجدد ).
اجرای این برنامه تقریبا چهل و هشت ساعت ادامه داشت و رسید به این:
1 0 2 2 0 4 3 0 8 4 1 14 5 1 28 6 3 52 7 6 98 8 10 188 9 21 354 10 39 672 11 74 1274 12 141 2414 13 267 4576 14 507 8672 15 961 16436 16 1821 31152 17 3452 59042 18 6543 111902 19 12400 212090 20 23502 401976 21 44543 761870 22 84422 1443982 23 160007 2736794 24 303263 5187076 25 574778 9831122 26 1089383 18633034 27 2064720 35315394 28 3913287 66933654
که به سادگی می گه در ماه بیست و هشتم، ۳.۹ میلیون نفر از بازی خارج شدن و ۶۶.۹ میلیون نفر هنوز تو بازی هستن. این همونه که به ما میگه اگر دوستی رو دیدیم که توی این بازی ها وارد شده، به هوش یا توان ریاضی یا توان استدلال در مقابل شرایط گول زنندهاش شک کنیم (: لازمه تکرار کنم که دعوای من با اون گروه اول، به دلیل ناتوانی منطقیشون نبود بلکه به خاطر ماله کشی روی کل عقایدشون بود وقتی – به اشتباه – بوی پول حس کرده بودن.
برای تموم این پست، این نمودار رو داشته باشیم:
حالا دو نکته می مونه برای شما: ۱) آدم ها چرا وارد این سیستم ها می شن در حالی که – حتی با پذیرفتن مشکلات اخلاقی – احتمال رسیدن به پول توش حتی کمتر از احتمال برنده شدن لاتاری پول های بزرگه. این یک بحث علمی و فنی است که متخصصسش باید نظر درست بده ولی ما هم حق داریم نظر داشته باشیم و در موردش بحث کنیم و ۲) برنامه رو بهتر کنین! این چرندی که من نوشتم واقعا بده. اگر برنامه قابل قبول تری داشته باشیم می شه باهاش کارهای جالبتری کرد (: در قدم اول همین رو با پرفرمنس و منطق درست بنویسیم. پیشنهادی دارین؟ اصلا یک مسابقه… منتظر پست بعدی باشین!
نکته مهم: الان برنامه ها رو توی کامنت نذارین… فردا مسابقه رو اعلام می کنم و جواب ها رو اونجا بفرستین.