Excelda lotereya simulyatsiyasi

Lotereya omad uchun ov emas,

bu yutqazganlar uchun ov.

Havas qiladigan muntazamlik bilan (va tez-tez so'nggi paytlarda) odamlar menga lotereyalar bilan bog'liq turli xil hisob-kitoblarda yordam so'rab yozishadi. Kimdir Excel-da yutuq raqamlarini tanlashning maxfiy algoritmini amalga oshirishni xohlaydi, kimdir o'tgan o'yinlardan tushib qolgan raqamlarda naqshlarni topmoqchi, kimdir lotereya tashkilotchilarini insofsiz o'yinda qo'lga olishni xohlaydi.

V etoy state mne xotelos by otvetit na chast etix voprosov. Blago, v Excel uchun resheniya takix zach dostatochno instrumentov, mnogie iz kotoryh, kstati, mumkin prigoditsya i v bolee prozaicheskih rabochy vaziyat.

Vazifa 1. G'alaba qozonish ehtimoli

Misol tariqasida 6 ta lotereyadan klassik Stoloto 45 ni olaylik. Qoidalarga ko'ra, faqat 10 ta raqamdan 6 ta raqamni taxmin qilganlargina super sovringa ega bo'lishadi (agar sovrin jamg'armasi qoldig'i oldingi o'yinlardan to'plangan bo'lsa, 45 million rubl yoki undan ko'p). Agar siz 5 ni taxmin qilsangiz, siz 150 ming rubl olasiz, agar 4 - 1500 rubl. , agar 3 tadan 6 ta raqam bo'lsa, unda 150 rubl, agar 2 raqam bo'lsa - chiptaga sarflangan 50 rublni qaytarasiz. Faqat bitta yoki hech kimni taxmin qiling - o'yin jarayonidan faqat endorfinlarni oling.

G'alaba qozonishning matematik ehtimoli standart funktsiya yordamida osonlik bilan hisoblanishi mumkin NUMBER COMB (ARALASHTIRMOQ), bunday holat uchun Microsoft Excelda mavjud. Bu funksiya M dan N ta sonning kombinatsiyasi sonini hisoblab chiqadi. Shunday qilib, bizning “6 dan 45 tasi” lotereyamiz uchun shunday bo'ladi:

=CHISLKOMB(45;6)

… 8 ga teng, bu lotereyadagi barcha mumkin bo'lgan kombinatsiyalarning umumiy soni.

Agar siz qisman g'alaba qozonish ehtimolini hisoblamoqchi bo'lsangiz (2 dan 5-6 ta raqam), unda siz birinchi navbatda bunday variantlar sonini hisoblashingiz kerak bo'ladi, bu taxmin qilingan raqamlar kombinatsiyasi sonining ko'paytmasiga teng. Qolganlarning taxmin qilinmagan raqamlari soni bo'yicha 6 (45-6) = 39 ta. Keyin biz barcha mumkin bo'lgan kombinatsiyalarning umumiy sonini (8) har bir variant uchun olingan g'alabalar soniga bo'lamiz va biz har bir holat uchun g'alaba qozonish ehtimolini olamiz:

Excelda lotereya simulyatsiyasi

Aytgancha, masalan, bizning mamlakatimizda aviahalokatda o'lim ehtimoli millionda 1ga baholanadi. Ruletkada kazinoda g'alaba qozonish, hamma narsani bitta raqamga tikish ehtimoli 1 dan 37 gacha.

Agar yuqorida aytilganlarning barchasi sizni to'xtata olmasa va siz hali ham o'ynashga tayyor bo'lsangiz, davom eting.

Vazifa 2. Har bir raqamning paydo bo'lish chastotasi

Boshlash uchun, keling, ma'lum raqamlar qaysi chastotada tushishini aniqlaylik. Ideal lotereyada, tahlil qilish uchun etarlicha katta vaqt oralig'ini hisobga olgan holda, barcha to'plar yutuq namunasida bo'lish ehtimoli bir xil bo'lishi kerak. Aslida, lotereya barabanining dizayn xususiyatlari va to'plarning vazni shakli bu rasmni buzishi mumkin va ba'zi to'plar uchun tushish ehtimoli boshqalarga qaraganda yuqori/past bo'lishi mumkin. Keling, ushbu gipotezani amalda sinab ko'raylik.

Masalan, 2020-21-da bo'lib o'tgan 6 ta lotereya o'yinlarining 45 yildagi barcha ma'lumotlarini ularning tashkilotchisi Stoloto veb-saytidan tahlil qilish uchun qulay, nomi bilan yozilgan "aqlli" jadval shaklida ko'rib chiqaylik. tabArxiv aylanishi. Rozygryshi proxodyat dva raza v den (v 11 utra va v 11 vechera), t.e. v etoy tablitse u nas poltory tysyachi tirajey-strok — tahlil qilish uchun nachala vyborka uchun hamma narsa:

Excelda lotereya simulyatsiyasi

Har bir raqamning paydo bo'lish chastotasini hisoblash uchun funktsiyadan foydalaning COUNTIF (COUNTIF) va unga funksiya qo'shing TEXT (MATN)bir xonali raqamlardan oldin va keyin bosh nol va yulduzchalarni qo‘shish uchun COUNTIF B ustunidagi kombinatsiyaning istalgan joyidan raqam paydo bo‘lishini qidiradi. Shuningdek, aniqroq bo‘lishi uchun natijalar bo‘yicha jadval tuzamiz va chastotalarni saralaymiz. kamayish tartibida:

Excelda lotereya simulyatsiyasi

O'rtacha har qanday to'p tushishi kerak 1459 durang * 6 to'p / 45 raqam = 194,53 marta (bu statistikada aynan shunday deyiladi) matematikaviy o'rganish), no xorosho vidno, chto nekotorye chisla (27, 32, 11…) vypadali zametno chashche (+18%), a nekotorye (10, 21, 6…) naoborot zametno regda (-15%), chem osnovnaya massa. Sootvetstvenno, strateii vyigrysha va h.k. libo stavit na te shary, chto vypadayut chashche, libo naoborot — delat stavku na redko vypadayushchie shary v nadejde, chto uni doljny nagnat otstavanie.

Vazifa 3. Qanday raqamlar uzoq vaqt davomida chizilmagan?

Yana bir strategiya, etarlicha ko'p miqdordagi o'yinlar bilan, ertami-kechmi 1 dan 45 gacha bo'lgan barcha raqamlardan har bir raqam tushib ketishi kerak degan fikrga asoslanadi. Shunday qilib, agar ba'zi raqamlar uzoq vaqt davomida g'oliblar orasida paydo bo'lmasa ("sovuq to'plar"), kelajakda ularga pul tikish mantiqan to'g'ri keladi. 

Mojno legko nayti vse davno ne vypadavshie nomera, esli otsortirovat nash arxiv tirajey za 2020-21 god po ubyvaniyu daty va funksiyalarni ishlatish KO'PROQ (MATCH). U har bir raqamni qidirish uchun yuqoridan pastgacha (ya'ni yangidan eskigacha) qidiradi va bu raqam oxirgi marta tushirilgan (yil oxiridan boshigacha) seriya raqamini beradi:

Excelda lotereya simulyatsiyasi

Zadacha 4. Generator sluchaynyh chisel

Boshqa o'yin strategiyasi raqamlarni taxmin qilishda psixologik omilni bartaraf etishga asoslangan. O'yinchi o'z pul tikish orqali raqamlarni tanlaganida, u ongsiz ravishda buni mutlaqo oqilona qilmaydi. Statistik ma'lumotlarga ko'ra, masalan, 1 dan 31 gacha raqamlar qolganlarga qaraganda 70% tez-tez tanlanadi (sevimli sanalar), 13 kamroq tanlanadi (la'nat o'nlab), "omadli" ettilikni o'z ichiga olgan raqamlar ko'proq tanlanadi va hokazo. Ammo biz barcha raqamlar bir xil bo'lgan mashinaga (lotereya barabaniga) qarshi o'ynayapmiz, shuning uchun imkoniyatlarimizni tenglashtirish uchun ularni bir xil matematik xolislik bilan tanlash mantiqan. Buning uchun Excelda tasodifiy va eng muhimi takrorlanmaydigan raqamlar generatorini yaratishimiz kerak:

    Excelda lotereya simulyatsiyasi

Buning uchun:

  1. nomli “aqlli” jadval yaratamiz jadval generatori, bu erda birinchi ustun 1 dan 45 gacha bo'lgan raqamlarimiz bo'ladi.
  2. Ikkinchi ustunda har bir raqam uchun vaznni kiriting (bizga biroz keyinroq kerak bo'ladi). Agar barcha raqamlar biz uchun bir xil qimmatli bo'lsa va biz ularni teng ehtimollik bilan tanlamoqchi bo'lsak, unda vazn hamma joyda 1 ga teng bo'lishi mumkin.
  3. Uchinchi ustunda biz funktsiyadan foydalanamiz SLCHIS (RAND), kotoraya v Excel generiruet sluchanoe drobnoe chislo ot 0 to 1, dobaviv k nemu ves iz predduschego stolbtsa. Takim obrazom kajdyy raz pri pereschyote lista (najatii na klavisu F9) har birining vaznini hisobga olgan holda 45 ta tasodifiy sondan iborat yangi to'plam hosil bo'ladi.
  4. Funktsiyadan foydalaniladigan to'rtinchi ustunni qo'shamiz RANK (RANK) vychislim rang (pozitsiyu v tope) dlya kajdogo iz chisel.

Endi funktsiyadan foydalangan holda 6-darajali birinchi oltita raqamni tanlash qoladi KO'PROQ (MATCH):

Excelda lotereya simulyatsiyasi

Pri najatii na klavisu F9 Excel varag'idagi formulalar qayta hisoblab chiqiladi va har safar yashil katakchalarda 6 ta raqamdan iborat yangi to'plamni olamiz. Bundan tashqari, B ustunida kattaroq vazn o'rnatilgan raqamlar mutanosib ravishda yuqori darajaga ega bo'ladi va shuning uchun bizning tasodifiy tanlovimiz natijalarida tez-tez paydo bo'ladi. Agar barcha raqamlarning vazni bir xil bo'lsa, ularning barchasi bir xil ehtimollik bilan tanlanadi. Shunday qilib, biz 6 tadan 45 tadan iborat adolatli va xolis tasodifiy sonlar generatorini olamiz, lekin agar kerak bo'lsa, taqsimotning tasodifiyligiga tuzatishlar kiritish imkoniyatiga ega bo'lamiz.

Agar biz har bir o'yinda bitta bilan emas, balki, masalan, birdaniga ikkita chipta bilan o'ynashga qaror qilsak, ularning har birida biz takrorlanmaydigan raqamlarni tanlaymiz, unda biz pastdan yashil diapazonga qo'shimcha chiziqlar qo'shishimiz mumkin, darajaga 6, 12, 18 va hokazolarni qo'shish. d. mos ravishda:

Excelda lotereya simulyatsiyasi

Vazifa 5. Excelda lotereya simulyatori

Ushbu mavzuning apofeozi sifatida keling, Excel-da to'liq huquqli lotereya simulyatorini yarataylik, unda siz har qanday strategiyani sinab ko'rishingiz va natijalarni taqqoslashingiz mumkin (optimallashtirish nazariyasida shunga o'xshash narsa Monte-Karlo usuli deb ham ataladi, ammo bu osonroq bo'ladi. Biz uchun).

Hamma narsani imkon qadar haqiqatga yaqinroq qilish uchun bir lahzaga tasavvur qiling-a, bu 1-yil 2022-yanvar va bizni bu yilgi qur’a o‘yinlari kutib turibdi, ularda biz o‘ynashni rejalashtirmoqdamiz. Men jadvalga haqiqiy tushirilgan raqamlarni kiritdim tablTiraži2022, keyingi hisob-kitoblarning qulayligi uchun qo'shimcha chizilgan raqamlarni bir-biridan alohida ustunlarga ajratish:

Excelda lotereya simulyatsiyasi

Alohida varaqda o'yin nomli "aqlli" jadval ko'rinishida modellashtirish uchun bo'sh joy yarating tabIgra quyidagi shakl:

Excelda lotereya simulyatsiyasi

Bu yerga:

  • Yuqoridagi sariq katakchalarda biz 2022-yilda ishtirok etmoqchi bo'lgan o'yinlar sonini (1-82) va har bir o'yinda o'ynagan chiptalar sonini belgilaymiz.
  • Dastlabki 11 ta ustun (AJ) ma'lumotlari 2022 yilgi o'yin varaqasidagi so'l bilan ko'chiriladi.
  • Keyingi oltita ustun uchun ma'lumotlar (KP) makro varaqdan olinadi Jenerator, bu erda biz tasodifiy sonlar generatorini amalga oshirdik (yuqoridagi 4-masalaga qarang).
  • Q ustunida biz tushirilgan raqamlar va funksiya yordamida yaratilgan raqamlar o'rtasidagi moslik sonini hisoblaymiz SUMPRODUCT (SUMPRODUCT).
  • V stolbtse R vychislyaem moliyaviy natija (esli ne vyigrali, to minus 50 rubley to bilet, esli vygrali, to priz — 50 r. za bilet)
  • Oxirgi S ustunida biz jarayondagi dinamikani ko'rish uchun butun o'yinning umumiy natijasini yig'indisi sifatida ko'rib chiqamiz.

Va bu butun tuzilmani qayta tiklash uchun bizga kichik makro kerak. Yorliqda dasturchi (ishlab chiquvchi) jamoani tanlang Visual Basic yoki klaviatura yorliqlaridan foydalaning Alt+F11. Keyin menyu orqali yangi bo'sh modul qo'shing Qo'shish - modul va u erda quyidagi kodni kiriting:

Sub Lottery() Dim iGames Integer, iTickets As Integer, i As Long, t As Integer, b As Integer 'ob'yavlyaem peremennye dlya ssylki na listy Set wsGame = Worksheets("Igra") Set wsNumbersG = Worksheets(") wsArchive = Worksheets("Tiraji 2022") iGames = wsGame.Range("C1") 'kolichestvo iTickets = wsGame.Range("C2") 'kolichestvo tirajetov v kajdom tiraje va i = 5 'Gastrome tabraws. ("6:1048576").Ochishchaem starye dannye For t = 1 iGames uchun b = 1 iTickets uchun 'kopiruem vyigravshie nomera s lista Tirazi 2022 va vstavlyaem na list Igra wsArchive(Cells1) uchun. (1, 1).Nusxa olish manzili:=wsGame.Cells(i, 10) 'kopiruem i vstavlyaem spetsialnoy vstavkoy znacheniy sgenerirovannye nomera s list Generator wsNumbers.Range("G1:L4").Copy wsGame.Cells(i, 4) .PasteSpecial Paste:=xlPasteValues ​​i = i + 11 Keyingi b Keyingi t End Sub  

Kerakli boshlang'ich parametrlarni sariq katakchalarga kiritish va makroni ishga tushirish qoladi Ishlab chiquvchi - Makroslar (Dasturchi — Makroslar) yoki klaviatura yorlig'i Alt+F8.

Excelda lotereya simulyatsiyasi

Aniqlik uchun siz oxirgi ustun uchun o'yin davomida pul qoldig'ining o'zgarishini aks ettiruvchi jami jami bilan diagramma yaratishingiz mumkin:

Excelda lotereya simulyatsiyasi

Turli strategiyalarni taqqoslash

Endi yaratilgan simulyatordan foydalanib, siz 2022-yilda haqiqiy oʻyinlarda istalgan oʻyin strategiyasini sinab koʻrishingiz va u olib keladigan natijalarni koʻrishingiz mumkin. Agar siz har bir o'yinda 1 ta chipta o'ynasangiz, "olxo'ri" ning umumiy rasmi quyidagicha ko'rinadi:

Excelda lotereya simulyatsiyasi

Bu yerga:

  • Jenerator har bir o'yinda generatorimiz tomonidan yaratilgan tasodifiy raqamlarni tanlaydigan o'yin (bir xil og'irlikda).
  • Tanlanganlar bu o'yin bo'lib, unda biz har bir o'yinda bir xil raqamlardan foydalanamiz - so'nggi ikki yil ichida eng ko'p durang o'ynagan raqamlar (27, 32, 11, 14, 34, 40).
  • Chet elliklar – xuddi shunday, lekin biz eng kam uchraydigan ochiladigan raqamlardan foydalanamiz (12, 18, 26, 10, 21, 6).
  • sovuq - barcha o'yinlarda biz uzoq vaqt davomida tushmagan raqamlardan foydalanamiz (35, 5, 39, 11, 6, 29).

Ko'rib turganingizdek, katta farq yo'q, lekin tasodifiy sonlar generatori boshqa "strategiyalarga" qaraganda bir oz yaxshiroq harakat qiladi.

Mojno ham poprobovat igrat bolshim kolichestvom biletov v kajdom tiraje, chtoby perekryt bolshee kolichestvo variantov (bu guruh uchun ushbu guruhga tegishli).

Har bir o'yinda tasodifiy hosil qilingan raqamlarga ega (bir xil og'irlikdagi) bitta chipta bilan o'ynash:

Excelda lotereya simulyatsiyasi

Har bir o'yinda tasodifiy yaratilgan raqamlar bilan 10 ta chipta o'ynash (bir xil og'irlikda):

Excelda lotereya simulyatsiyasi

Har bir o'yinda tasodifiy raqamlar bilan 100 ta chipta o'ynash (bir xil vaznda):

Excelda lotereya simulyatsiyasi

Sharhlar, ular aytganidek, ortiqcha - barcha holatlarda depozitni to'kish muqarrar 🙂

Leave a Reply