Generic selectors
فقط تشابه کامل
جستجو در سربرگ ها
جستجو در محتوا
جستجو در پست ها
جستجو در برگه ها

اگر 10000 بار 50 نفر به صورت اتفاقی به هم 1 واحد پول بدهند چه می شود؟

نمودار رندوم
فرض کنید در یک اتاق 50 نفر وجود دارند که هر کدام 100 تومان در حسابشان دارند ، حالا در دور اول هر فرد به صورت اتفاقی 1 تومان به فرد دیگری می دهد. به نظر شما بعد از 10000 تکرار این کار چه می شود؟

به نام خدا

فرض کنید در یک اتاق 50 نفر وجود دارند که هر کدام 100 تومان در حسابشان دارند ، حالا در دور اول حر فرد به صورت اتفاقی 1 تومان به فرد دیگری می دهد. اگر فردی مقدار پولش به 0 برسد از دور خارج می شود.

به نظر شما بعد از 10,000 بار چه می شود؟

پاسخ شهودی ما به این سوال این است که چون به صورت رندوم پول جا به جا می شود، مقدار پول تقریبا در یک سطح باقی می ماند ولی ایا واقعا این طور است؟

حل مسئله

بسیار خوب برای حل این مسئله ما نیاز به یک لیست 50 تایی که هر کدام مقدار اولیه 100 دارد را ایجاد می کنیم

people = []
for i in range(50):
    people.append(100)

پایه کار ما به این صورت می باشد که 1 واحد از پول فرد اول کم می شود و یک واحد به فرد دوم که به صورت اتفاقی انتخاب شده است اضافه می شود

people[person1] = people[person1] - 1
people[person2] = people[person2] + 1

برای انتخاب اتفاقی کاربر از کتابخانه random استفاده می کنیم

import random
person2 = random.randrange(0,50)

برای نمایش بهتر نتیجه ما از کتابخانه قدرتمند matplotlib برای نمایش نموداری اطلاعات استفاده کرده ایم.

الان که توانستیم به صورت رندوم یک کاربر انتخاب کنیم می توانیم برنامه کامل را به صورت زیر بنویسم.

کد کامل

import random
import matplotlib.pyplot as plt
people = []
for i in range(50):
    people.append(100)
for i in range(10000):
    for person1 in range(50):
        if people[person1] == 0:
            continue
        people[person1] = people[person1] - 1
        person2 = random.randrange(0,50)
        while people[person2] == 0:
            person2 = random.randrange(0,50)
        people[person2] = people[person2] + 1
people.sort()
plt.bar(range(50),people)
plt.show(

به اشتراک بگذارید

اشتراک گذاری در email
اشتراک گذاری در telegram
اشتراک گذاری در reddit
اشتراک گذاری در whatsapp

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

بیشتر بخوانید