Uigaji wa bahati nasibu katika Excel

Bahati nasibu sio kuwinda bahati,

ni kuwawinda walioshindwa.

Kwa ukawaida unaowezekana (na mara nyingi zaidi hivi majuzi), watu huniandikia wakiomba msaada katika mahesabu mbalimbali yanayohusiana na bahati nasibu. Mtu anataka kutekeleza algorithm yao ya siri kwa kuchagua nambari za kushinda katika Excel, mtu anataka kupata mifumo katika nambari ambazo zimeanguka kutoka kwa michoro zilizopita, mtu anataka kukamata waandaaji wa bahati nasibu katika mchezo usio waaminifu.

В этой статье мне хотелось бы ответить на часть этих вопросов. Благо, katika Excel для решения таких задач достаточно инструментов, многие из которых, кстати, могут пригодиться и в более прозаичеоских сих.

Kazi 1. Uwezekano wa kushinda

Wacha tuchukue mfano wa bahati nasibu ya Stoloto 6 kati ya 45 kama mfano. Kulingana na sheria, ni wale tu ambao walidhani nambari zote 10 kati ya 6 hupokea tuzo ya juu (rubles milioni 45 au zaidi ikiwa salio la mfuko wa tuzo limekusanywa kutoka kwa michoro ya hapo awali). Ikiwa unadhani 5, utapokea rubles elfu 150, ikiwa 4 - 1500 rubles. , ikiwa nambari 3 kati ya 6, basi rubles 150, ikiwa nambari 2 - utarudisha rubles 50 zilizotumiwa kwenye tikiti. Nadhani moja tu au hapana - pata endorphins pekee kutoka kwa mchakato wa mchezo.

Uwezekano wa hisabati wa kushinda unaweza kuhesabiwa kwa urahisi kwa kutumia chaguo la kukokotoa la kawaida NUMBERCOMB (UNGANISHA), ambayo inapatikana katika Microsoft Excel kwa kesi kama hiyo. Chaguo hili la kukokotoa huhesabu idadi ya michanganyiko ya nambari N kati ya M. Kwa hivyo kwa bahati nasibu yetu ya "6 kati ya 45" itakuwa:

=ЧИСЛКОМБ(45;6)

... ambayo ni sawa na 8, jumla ya idadi ya mchanganyiko wote unaowezekana katika bahati nasibu hii.

Ikiwa unataka kuhesabu uwezekano wa ushindi wa sehemu (nambari 2-5 kati ya 6), basi itabidi kwanza uhesabu idadi ya chaguzi kama hizo, ambayo ni sawa na bidhaa ya idadi ya mchanganyiko wa nambari zilizokadiriwa kutoka 6 kwa idadi ya nambari ambazo hazijapimwa kati ya zilizobaki (45-6) = nambari 39. Kisha tunagawanya jumla ya idadi ya michanganyiko yote inayowezekana (8) na nambari iliyopokelewa ya ushindi kwa kila chaguo - na tunapata uwezekano wa kushinda kwa kila kesi:

Uigaji wa bahati nasibu katika Excel

Kwa njia, uwezekano, kwa mfano, wa kufa katika ajali ya ndege katika Nchi Yetu inakadiriwa kuwa karibu 1 kati ya milioni. Na uwezekano wa kushinda katika kasino kwenye roulette, kuweka kamari kila kitu kwa nambari moja ni 1 hadi 37.

Ikiwa yote yaliyo hapo juu hayakukuzuia na bado uko tayari kucheza zaidi, endelea.

Kazi ya 2. Mzunguko wa kutokea kwa kila nambari

Kuanza, hebu tuamue ni mara ngapi nambari fulani hutoka. Katika bahati nasibu bora, ikizingatiwa muda wa kutosha wa uchanganuzi, mipira yote inapaswa kuwa na uwezekano sawa wa kuwa katika sampuli ya kushinda. Kwa kweli, vipengele vya muundo wa ngoma ya bahati nasibu na umbo la uzito wa mipira vinaweza kupotosha picha hii, na kwa baadhi ya mipira uwezekano wa kuanguka unaweza kuwa juu/chini zaidi kuliko wengine. Wacha tujaribu nadharia hii kwa vitendo.

Wacha tuchukue, kwa mfano, data juu ya droo zote za 2020 kati ya 21 za bahati nasibu ambazo zilifanyika mnamo 6-45 kutoka kwa wavuti ya mratibu wao Stoloto, iliyoundwa kwa namna ya jedwali la "smart" kama hilo, linalofaa kwa uchambuzi, na jina. tabArchive Mzunguko. Розыгрыши проходят два раза в день (в 11 утра и в 11 вечера), т.е. katika этой таблице у нас полторы тысячи тиражей-строк — вполне достаточная для начала выборка для анализа:

Uigaji wa bahati nasibu katika Excel

Ili kuhesabu mzunguko wa kutokea kwa kila nambari, tumia chaguo la kukokotoa COUNTIF (COUNTIF) na uongeze kitendakazi kwake TEXT (TEXT)ili kuongeza sufuri na nyota zinazoongoza kabla na baada ya nambari za tarakimu moja, ili COUNTIF itafute kutokea kwa nambari mahali popote kwenye mchanganyiko katika safu wima B. Pia, kwa uwazi zaidi, tutaunda chati kulingana na matokeo na kupanga masafa. kwa utaratibu wa kushuka:

Uigaji wa bahati nasibu katika Excel

Kwa wastani, mpira wowote unapaswa kuanguka 1459 huchota * mipira 6 / nambari 45 = mara 194,53 (hii ndio hasa inaitwa katika takwimu. математическим ожиданием), но хорошо видно, что некоторые числа (27, 32, 11…) выпадали заметно чаще (+18%), а некоторые (10, 21, 6…) наобороя 15 % Соответственно, можно попробовать использовать эту информацию для стратегии выигрыша, т.е. либо ставить kwa те шары, что выпадают чаще, либо наоборот - делать ставку редко выпадающие шары выпадают чаще, либо наоборот - делать ставку редко выпадающие шары выпадают чаще, что они настаные.

Kazi ya 3. Ni nambari gani ambazo hazijachorwa kwa muda mrefu?

Mkakati mwingine unategemea wazo kwamba kwa idadi kubwa ya kutosha ya michoro, mapema au baadaye kila nambari kutoka kwa zote zinazopatikana kutoka 1 hadi 45 inapaswa kuanguka. Kwa hivyo ikiwa nambari zingine hazijaonekana kati ya washindi kwa muda mrefu ("mipira baridi"), basi ni busara kujaribu kuweka dau juu yao katika siku zijazo. 

Можно легко найти все давно не выпадавшие номера, если отсортировать наш архив тиражей за 2020-21 mwaka mmoja uliopita kusambaza habari ZAIDI WAZI (MECHI). Itafuta kutoka juu hadi chini (yaani kutoka kwa mbio mpya hadi za zamani) kutafuta kila nambari na kutoa nambari ya serial ya kukimbia (kuhesabu kutoka mwisho wa mwaka hadi mwanzo) ambapo nambari hii iliangushwa mara ya mwisho:

Uigaji wa bahati nasibu katika Excel

Задача 4. Генератор случайных чисел

Mbinu nyingine ya mchezo inategemea kuondoa sababu ya kisaikolojia wakati wa kubahatisha nambari. Mchezaji anapochagua nambari kwa kuweka dau lake, yeye hufanya hivi bila akili kabisa. Kulingana na takwimu, kwa mfano, nambari kutoka 1 hadi 31 huchaguliwa 70% mara nyingi zaidi kuliko zingine (tarehe zinazopendwa), 13 huchaguliwa mara chache (dazeni nyingi), nambari zilizo na "bahati" saba huchaguliwa mara nyingi zaidi, nk. Lakini tunacheza dhidi ya mashine (ngoma ya bahati nasibu) ambayo nambari zote ni sawa, kwa hivyo ni busara kuzichagua kwa usawa sawa wa hesabu ili kusawazisha nafasi zetu. Ili kufanya hivyo, tunahitaji kuunda jenereta ya nambari za nasibu na - muhimu zaidi - zisizorudiwa katika Excel:

    Uigaji wa bahati nasibu katika Excel

Ili kufanya hivi:

  1. Wacha tuunde jedwali la "smart" linaloitwa Jenereta ya meza, ambapo safu wima ya kwanza itakuwa nambari zetu kutoka 1 hadi 45.
  2. Katika safu ya pili, ingiza uzito kwa kila nambari (tutaihitaji baadaye kidogo). Ikiwa nambari zote zina thamani sawa kwetu na tunataka kuzichagua kwa uwezekano sawa, basi uzito unaweza kuweka sawa na 1 kila mahali.
  3. Katika safu ya tatu tunatumia kazi SLCHIS (RANDI), которая в Excel генерирует случайное дробное число от 0 hadi 1, добавив к нему вес из предыдущего столбца. Таким образом каждый раз при пересчёте листа (нажатии на клавишу F9) seti mpya ya nambari 45 za nasibu zitatolewa, kwa kuzingatia uzito kwa kila mmoja wao.
  4. Hebu tuongeze safu ya nne, ambapo kwa kutumia kazi RANK (CHEO) вычислим ранг (позицию в топе) для каждого из чисел.

Sasa inabakia kufanya uteuzi wa nambari sita za kwanza kwa kiwango cha 6 kwa kutumia kazi ZAIDI WAZI (MECHI):

Uigaji wa bahati nasibu katika Excel

При нажатии на клавишу F9 fomula kwenye karatasi ya Excel zitahesabiwa tena na kila wakati tutapata seti mpya ya nambari 6 kwenye seli za kijani kibichi. Zaidi ya hayo, nambari ambazo uzani mkubwa uliwekwa katika safu wima B zitapokea kiwango cha juu zaidi na, kwa hivyo, zitaonekana mara nyingi zaidi katika matokeo ya sampuli yetu ya nasibu. Ikiwa uzito wa nambari zote umewekwa sawa, basi zote zitachaguliwa kwa uwezekano sawa. Kwa njia hii tunapata jenereta ya nambari ya nasibu ya haki na isiyo na upendeleo ya 6 kati ya 45, lakini yenye uwezo wa kufanya marekebisho kwa unasibu wa usambazaji ikiwa ni lazima.

Ikiwa tutaamua kucheza katika kila sare sio moja, lakini, kwa mfano, na tikiti mbili mara moja, katika kila moja ambayo tutachagua nambari zisizorudiwa, basi tunaweza kuongeza mistari ya ziada kutoka chini hadi safu ya kijani kibichi, kuongeza 6, 12, 18, nk kwa cheo. d. kwa mtiririko huo:

Uigaji wa bahati nasibu katika Excel

Kazi ya 5. Simulator ya Lottery katika Excel

Kama apotheosis ya mada hii yote, wacha tuunda simulator ya bahati nasibu kamili katika Excel, ambapo unaweza kujaribu mikakati yoyote na kulinganisha matokeo (katika nadharia ya utoshelezaji, kitu kama hicho pia kinaitwa njia ya Monte Carlo, lakini itakuwa rahisi zaidi. kwa ajili yetu).

Ili kufanya kila kitu karibu na uhalisia iwezekanavyo, fikiria kwa muda kuwa ni Januari 1, 2022 na tuna droo za mwaka huu mbele yetu, ambazo tunapanga kucheza. Nikaingiza namba halisi zilizoshuka mezani tablTiraži2022, ikitenganisha nambari zilizochorwa zaidi kutoka kwa kila mmoja kuwa safu wima tofauti kwa urahisi wa hesabu zinazofuata:

Uigaji wa bahati nasibu katika Excel

Kwenye karatasi tofauti MABADILKO tengeneza tupu kwa ajili ya kuigwa kwa namna ya jedwali la "smart" lenye jina tabIgra fomu ifuatayo:

Uigaji wa bahati nasibu katika Excel

hapa:

  • Katika seli za manjano hapo juu, tutaweka kwa jumla idadi ya sare mnamo 2022 ambayo tunataka kushiriki (1-82) na idadi ya tikiti tunazocheza katika kila droo.
  • Data ya safu wima 11 za kwanza (AJ) itanakiliwa na jumla kutoka laha ya kuteka ya 2022.
  • Data ya safu wima sita zinazofuata (KP) jumla itachukua kutoka kwa laha Jenereta, ambapo tumetekeleza jenereta ya nambari isiyo ya kawaida (tazama tatizo la 4 hapo juu).
  • Katika safu ya Q, tunahesabu idadi ya mechi kati ya nambari zilizoshuka na zile zinazozalishwa kwa kutumia kazi SUMPRODUCT (SUMPRODUCT).
  • В столбце R вычисляем финансовый результат (если не выиграли, то минус 50 рублей за билет, если выиграли, то приз — 50)
  • Katika safu wima ya mwisho S, tunazingatia matokeo ya jumla ya mchezo mzima kama jumla ya limbikizo ili kuona mienendo katika mchakato.

Na ili kufufua muundo huu wote, tunahitaji jumla ndogo. Kwenye kichupo developer (Msanidi programu) chagua timu Visual Basic au tumia njia ya mkato ya kibodi Alt+F11. Kisha ongeza moduli mpya tupu kupitia menyu Ingiza - Moduli na ingiza nambari ifuatayo hapo:

Sub Lottery() Dim iGames As Integer, iTickets As Integer, i As Long, t As Integer, b As Integer 'объявляем переменные для ссылки на листы Weka wsGame = Laha za Kazi("Игра") = "Nambari" ya Laha za Kazi wsArchive = Laha za Kazi("Тиражи 2022") iGames = wsGame.Range("C1") 'количество тиражей iTickets = wsGame.Range("C2") 'количество билетов в кажбром тиражей iTickets = 5 ("6:1048576").Futa 'очищаем старые данные Kwa t = 1 Kwa iGames Kwa b = 1 Kwa iTickets 'копируем выигравшие номера с листа Тиражи Иста Тиражи Иста Тиражи 2022 Инстелье , Иста Тиражи 1 Исталье вражий , Arставли 1, Иставлий 1, Иставлья 10, Иставля 1, Иставы 4, Иставский 4. (11, 1).Nakili Lengwa:=wsGame.Seli(i, XNUMX) 'копируем и вставляем специальной вставкой значений сгенерированные номера с листа Генератор Генератор: XNUMX)"Nambari XNUMX"(G)(G)(G)(G)(G)(G) XNUMX. .PasteSpecial Bandika:=xlPasteValues ​​i = i + XNUMX Inayofuata b Inayofuata t Mwisho Sub  

Inabakia kuingiza vigezo vya awali vinavyohitajika kwenye seli za njano na kuendesha macro kupitia Msanidi - Macros (Msanidi - Macros) au njia ya mkato ya kibodi Alt+F8.

Uigaji wa bahati nasibu katika Excel

Kwa uwazi, unaweza pia kuunda mchoro wa safu wima ya mwisho na jumla ya limbikizo, inayoonyesha mabadiliko katika salio la pesa wakati wa mchezo:

Uigaji wa bahati nasibu katika Excel

Ulinganisho wa mikakati tofauti

Sasa, kwa kutumia kiigaji iliyoundwa, unaweza kujaribu mkakati wowote wa mchezo kwenye droo halisi mnamo 2022 na uone matokeo ambayo ingeleta. Ikiwa unacheza tikiti 1 katika kila droo, basi picha ya jumla ya "plum" inaonekana kama hii:

Uigaji wa bahati nasibu katika Excel

hapa:

  • Jenereta ni mchezo ambapo katika kila mchoro tunachagua nambari nasibu iliyoundwa na jenereta yetu (yenye uzito sawa).
  • favorites ni mchezo ambapo katika kila sare tunatumia nambari zinazofanana - zile ambazo mara nyingi zimetoka sare katika kipindi cha miaka miwili iliyopita (27, 32, 11, 14, 34, 40).
  • Nje - sawa, lakini tunatumia nambari nadra za kushuka (12, 18, 26, 10, 21, 6).
  • Baridi - katika michoro zote tunatumia nambari ambazo hazijaanguka kwa muda mrefu (35, 5, 39, 11, 6, 29).

Kama unaweza kuona, hakuna tofauti kubwa, lakini jenereta ya nambari isiyo ya kawaida hufanya vizuri zaidi kuliko "mkakati" zingine.

Kama unavyojua, unaweza kupata maelezo ya ziada kwa ajili ya matumizi ya fedha katika каждом тираже, чтобы перекрыть большим количеством билетов katika каждом тираже, чтобы перекрыть большим количеством билетов katika каждом тираже, чтобы перекрыть большим количество билетов в каждом тираже, чтобы перекрыть большим количество вариантовый песни.

Inacheza katika kila droo na tikiti moja yenye nambari zinazozalishwa bila mpangilio (zenye uzito sawa):

Uigaji wa bahati nasibu katika Excel

Kuchezesha tikiti 10 katika kila droo na nambari zinazozalishwa bila mpangilio (zilizo na uzito sawa):

Uigaji wa bahati nasibu katika Excel

Kucheza tikiti 100 katika kila droo na nambari za nasibu (zenye uzito sawa):

Uigaji wa bahati nasibu katika Excel

Maoni, kama wanasema, ni ya juu sana - kukimbia kwa amana ni kuepukika katika hali zote 🙂

Acha Reply