ლატარიის სიმულაცია Excel-ში

ლატარია არ არის იღბლის ნადირობა,

ეს არის ნადირობა დამარცხებულებზე.

შესაშური რეგულარობით (და უფრო ხშირად ამ ბოლო დროს) ხალხი მწერს და დახმარებას მთხოვს ლატარიებთან დაკავშირებულ სხვადასხვა გამოთვლებში. ვიღაცას სურს განახორციელოს თავისი საიდუმლო ალგორითმი Excel-ში მომგებიანი ნომრების არჩევისთვის, ვიღაცას სურს იპოვნოს შაბლონები წარსულში გათამაშებიდან ამოვარდნილ ციფრებში, ვიღაცას სურს ლატარიის ორგანიზატორები დაიჭიროს არაკეთილსინდისიერ თამაშში.

В этой статье мне хотелось бы ответить на часть этих вопросов. Благо, в Excel для решения таких задач სრულყოფილად ინსტრუმენტები, ბევრი გამო კოტორები, кстати, можит пригодиться и в болье прозаических рабочих ситуациях.

ამოცანა 1. გამარჯვების ალბათობა

მაგალითისთვის ავიღოთ კლასიკური Stoloto 6 45 ლატარიიდან. წესების მიხედვით, მხოლოდ ისინი, ვინც გამოიცნო 10-დან 6 რიცხვი, იღებს სუპერ პრიზს (45 მილიონი რუბლი ან მეტი, თუ საპრიზო ფონდის ნაშთი დაგროვდა წინა გათამაშებიდან). თუ გამოიცანით 5, მიიღებთ 150 ათას რუბლს, თუ 4 – 1500 რუბლს. , თუ 3-დან 6 ნომერი, მაშინ 150 მანეთი, თუ 2 ნომერი – დაგიბრუნებთ ბილეთზე დახარჯულ 50 რუბლს. გამოიცანით მხოლოდ ერთი ან არცერთი - მიიღეთ მხოლოდ ენდორფინები თამაშის პროცესიდან.

გამარჯვების მათემატიკური ალბათობა მარტივად შეიძლება გამოითვალოს სტანდარტული ფუნქციის გამოყენებით NUMBERCOMB (კომბინირება), რომელიც ხელმისაწვდომია Microsoft Excel-ში ასეთი შემთხვევისთვის. ეს ფუნქცია ითვლის N რიცხვების კომბინაციების რაოდენობას M-დან. ასე რომ, ჩვენი "6 45-დან" ლატარიისთვის ეს იქნება:

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

… რაც უდრის 8-ს, ამ ლატარიის ყველა შესაძლო კომბინაციის საერთო რაოდენობას.

თუ გსურთ გამოთვალოთ ნაწილობრივი მოგების ალბათობა (2-5 რიცხვი 6-დან), მაშინ ჯერ უნდა გამოთვალოთ ასეთი ვარიანტების რაოდენობა, რომელიც უდრის გამოცნობილი რიცხვების კომბინაციების რაოდენობის ნამრავლს. 6 გამოუცნობი რიცხვებით დარჩენილი (45-6) = 39 რიცხვი. შემდეგ ჩვენ ვყოფთ ყველა შესაძლო კომბინაციის (8) საერთო რაოდენობას თითოეული ვარიანტისთვის მიღებული მოგების რაოდენობაზე - და ვიღებთ მოგების ალბათობას თითოეული შემთხვევისთვის:

ლატარიის სიმულაცია Excel-ში

სხვათა შორის, ალბათობა, მაგალითად, ჩვენს ქვეყანაში ავიაკატასტროფაში დაღუპვის ალბათობა შეფასებულია დაახლოებით 1 მილიონიდან. და კაზინოში რულეტის მოგების ალბათობა, ყველაფრის ერთ ნომერზე დადება არის 1-დან 37-მდე.

თუ ყოველივე ზემოთქმულმა არ შეგაჩერათ და კვლავ მზად ხართ შემდგომი თამაშისთვის, განაგრძეთ.

ამოცანა 2. თითოეული რიცხვის გაჩენის სიხშირე

დასაწყისისთვის, მოდით განვსაზღვროთ, რა სიხშირით ამოვარდება გარკვეული რიცხვები. იდეალურ ლატარიაში, ანალიზისთვის საკმარისად დიდი დროის ინტერვალით, ყველა ბურთს უნდა ჰქონდეს იგივე ალბათობა, რომ იყოს მომგებიან ნიმუშში. სინამდვილეში, ლატარიის დოლის დიზაინის მახასიათებლებმა და ბურთების წონის ფორმამ შეიძლება დაამახინჯოს ეს სურათი და ზოგიერთი ბურთისთვის დაცემის ალბათობა შეიძლება იყოს უფრო მაღალი/დაბალი, ვიდრე სხვებისთვის. მოდით შევამოწმოთ ეს ჰიპოთეზა პრაქტიკაში.

ავიღოთ, მაგალითად, ყველა 2020 წლის მონაცემები 21 ლატარიის გათამაშებიდან, რომლებიც ჩატარდა 6-45-ში მათი ორგანიზატორის Stoloto-ს ვებსაიტიდან, შექმნილია ასეთი „ჭკვიანი“ ცხრილის სახით, მოსახერხებელი ანალიზისთვის, სახელწოდებით. tabარქივის ტირაჟი. Розыгрыши проходят два раза в день (в 11 утра и 11 вечер), т.е. в этой таблице у нас полторы тысячи тиражей-строк — სრული მიწოდება для начала выборка для ანალიზი:

ლატარიის სიმულაცია Excel-ში

თითოეული რიცხვის გაჩენის სიხშირის გამოსათვლელად გამოიყენეთ ფუნქცია COUNTIF (COUNTIF) და დაამატეთ მას ფუნქცია ტექსტის (ტექსტი)ერთნიშნა რიცხვებს წინ და მის შემდეგ დაუმატეთ წამყვანი ნულები და ვარსკვლავები, რათა COUNTIF მოძებნოს რიცხვის გამოჩენა ნებისმიერ ადგილას, სვეტში B. ასევე, მეტი სიცხადისთვის, ჩვენ ავაშენებთ დიაგრამას შედეგების მიხედვით და დავახარისხებთ სიხშირეებს. კლებადობით:

ლატარიის სიმულაცია Excel-ში

საშუალოდ, ნებისმიერი ბურთი უნდა დაეცეს 1459 გათამაშება * 6 ბურთი / 45 რიცხვი = 194,53 ჯერ (სწორედ ასე ჰქვია სტატისტიკას математическим ожиданием), მაგრამ хорошо видно, что некоторые числа (27, 32, 11…) ცალსახად დაბალია (+18%), არაკოტორული (10, 21, 6…) რჩეული დაბალი რეჟე (-15%), ძირითადი მასა. Sootvetstvenno, შესაძლებელია გამოიცნოთ ინფორმაციის გამოყენება სტრატეგიების შესახებ, т.е. ლიбо დაყენებულია თხე შარы, что выпадают чаще, либо наоборот — შეასრულე პუნქტი რიგზე, რაც იმას ნიშნავს, რომ ის იძულებული გახდა.

დავალება 3. რა რიცხვები დიდი ხანია არ არის დახატული?

კიდევ ერთი სტრატეგია ემყარება იდეას, რომ საკმარისად დიდი რაოდენობის გათამაშებით, ადრე თუ გვიან, ყოველი რიცხვი ყველა ხელმისაწვდომიდან 1-დან 45-მდე უნდა ამოვარდეს. ასე რომ, თუ რამდენიმე რიცხვი გამარჯვებულებს შორის დიდი ხანია არ გამოჩნდა („ცივი ბურთები“), მაშინ ლოგიკურია, რომ სცადოთ ფსონი მათზე მომავალში. 

2020-21 წწ. უფრო გამოვლენილი (მატჩი). ის მოიძიებს ზემოდან ქვემოდან (ანუ ახლებიდან ძველ გაშვებამდე) თითოეული ნომრის მოსაძებნად და გასცემს სერიულ ნომერს (ითვლის წლის ბოლოდან დასაწყისამდე), სადაც ეს რიცხვი ბოლოს იქნა ჩაშვებული:

ლატარიის სიმულაცია Excel-ში

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

თამაშის კიდევ ერთი სტრატეგია ეფუძნება რიცხვების გამოცნობისას ფსიქოლოგიური ფაქტორის აღმოფხვრას. როდესაც მოთამაშე ირჩევს ციფრებს ფსონის დადების გზით, ის ამას ქვეცნობიერად აკეთებს არა მთლად რაციონალურად. სტატისტიკის მიხედვით, მაგალითად, 1-დან 31-მდე რიცხვებს ირჩევენ 70% უფრო ხშირად, ვიდრე დანარჩენი (საყვარელი თარიღები), 13 ირჩევა ნაკლებად ხშირად (დაწყევლილი ათეული), უფრო ხშირად ირჩევენ რიცხვებს, რომლებიც შეიცავს "იღბლიან" შვიდს და ა.შ. მაგრამ ჩვენ ვთამაშობთ მანქანასთან (ლატარიის ბარაბანი), რომლისთვისაც ყველა რიცხვი ერთნაირია, ამიტომ აზრი აქვს მათი არჩევა იგივე მათემატიკური მიუკერძოებლობით, რათა გავათანაბროთ ჩვენი შანსები. ამისათვის ჩვენ უნდა შევქმნათ შემთხვევითი და, რაც მთავარია, განუმეორებელი რიცხვების გენერატორი Excel-ში:

    ლატარიის სიმულაცია Excel-ში

გააკეთო ეს:

  1. მოდით შევქმნათ "ჭკვიანი" ცხრილი სახელად მაგიდის გენერატორი, სადაც პირველი სვეტი იქნება ჩვენი ნომრები 1-დან 45-მდე.
  2. მეორე სვეტში შეიყვანეთ წონა თითოეული ნომრისთვის (დაგვჭირდება ცოტა მოგვიანებით). თუ ყველა რიცხვი ჩვენთვის თანაბრად ღირებულია და გვინდა ავირჩიოთ ისინი თანაბარი ალბათობით, მაშინ წონა ყველგან შეიძლება 1-ის ტოლი იყოს.
  3. მესამე სვეტში ვიყენებთ ფუნქციას SLCHIS (RAND), კოტორაია Excel-ში გენერირებულია 0-დან 1-მდე შეკუმშული ჩისლოდან, რომელიც არ არის გამორიცხული. Таким образом каждый раз при пересчёте სია F9) წარმოიქმნება 45 შემთხვევითი რიცხვის ახალი ნაკრები, თითოეული მათგანის წონის გათვალისწინებით.
  4. დავამატოთ მეოთხე სვეტი, სადაც ფუნქციის გამოყენება RANK (RANK) вычислим ранг (позицию в топе) для каждого из чисел.

ახლა რჩება პირველი ექვსი ნომრის შერჩევა მე-6 რანგის მიხედვით ფუნქციის გამოყენებით უფრო გამოვლენილი (მატჩი):

ლატარიის სიმულაცია Excel-ში

При нажатии на клавишу F9 Excel-ის ფურცელზე არსებული ფორმულები ხელახლა გამოითვლება და ყოველ ჯერზე მივიღებთ მწვანე უჯრედებში 6 რიცხვის ახალ კომპლექტს. უფრო მეტიც, რიცხვები, რომლებისთვისაც უფრო დიდი წონა იყო მითითებული B სვეტში, მიიღებენ პროპორციულად უფრო მაღალ წოდებას და, შესაბამისად, უფრო ხშირად გამოჩნდება ჩვენი შემთხვევითი ნიმუშის შედეგებში. თუ ყველა რიცხვის წონა დაყენებულია ერთნაირი, მაშინ ყველა მათგანი შეირჩევა იგივე ალბათობით. ამ გზით მივიღებთ სამართლიან და მიუკერძოებელ შემთხვევითი რიცხვების გენერატორს 6-დან 45-დან, მაგრამ საჭიროების შემთხვევაში განაწილების შემთხვევითობის კორექტირების შესაძლებლობით.

თუ გადავწყვეტთ, რომ თითოეულ გათამაშებაში ვითამაშოთ არა ერთი, არამედ, მაგალითად, ერთდროულად ორი ბილეთით, რომელთაგან თითოეულში ავირჩევთ განუმეორებელ რიცხვებს, მაშინ შეგვიძლია უბრალოდ დავამატოთ დამატებითი ხაზები ქვემოდან მწვანე დიაპაზონში. წოდებას 6, 12, 18 და ა.შ. დ. შესაბამისად:

ლატარიის სიმულაცია Excel-ში

ამოცანა 5. ლატარიის სიმულატორი Excel-ში

როგორც მთელი ამ თემის აპოთეოზი, მოდით შევქმნათ ლატარიის სრულფასოვანი სიმულატორი Excel-ში, სადაც შეგიძლიათ სცადოთ ნებისმიერი სტრატეგია და შეადაროთ შედეგები (ოპტიმიზაციის თეორიაში მსგავსს მონტე კარლოს მეთოდსაც უწოდებენ, მაგრამ ეს უფრო მარტივი იქნება ჩვენთვის).

ყველაფერი რეალობასთან რაც შეიძლება ახლოს რომ იყოს, ერთი წუთით წარმოიდგინეთ, რომ 1 წლის 2022 იანვარია და წინ გვაქვს წლევანდელი გათამაშებები, რომლებშიც თამაშს ვგეგმავთ. ცხრილში შევიყვანე რეალური ჩამოშვებული ნომრები tablTiraži2022, დამატებით შედგენილი რიცხვების ერთმანეთისგან ცალკეულ სვეტებად გამოყოფა შემდგომი გამოთვლების მოხერხებულობისთვის:

ლატარიის სიმულაცია Excel-ში

ცალკე ფურცელზე თამაშის შექმენით ბლანკი მოდელირებისთვის "ჭკვიანი" ცხრილის სახით სახელწოდებით tabIgra შემდეგი ფორმა:

ლატარიის სიმულაცია Excel-ში

აქ:

  • ზემოთ მოყვანილ ყვითელ უჯრედებში მაკროსთვის დავადგენთ გათამაშებების რაოდენობას 2022 წელს, რომელშიც გვინდა მონაწილეობა (1-82) და ბილეთების რაოდენობას, რომლებსაც ვთამაშობთ თითოეულ გათამაშებაში.
  • პირველი 11 სვეტის მონაცემები (AJ) დაკოპირდება მაკროთი 2022 წლის გათამაშების ფურცლიდან.
  • შემდეგი ექვსი სვეტის (KP) მონაცემებს მაკრო მიიღებს ფურცლიდან გენერატორი, სადაც ჩვენ განვახორციელეთ შემთხვევითი რიცხვების გენერატორი (იხ. ამოცანა 4 ზემოთ).
  • სვეტში Q, ჩვენ ვითვლით დამთხვევების რაოდენობას ამოვარდნილ და ფუნქციის გამოყენებით წარმოქმნილ რიცხვებს შორის პროდუქტი (SUMPRODUCT).
  • В столбце R вычисляем финансовый результат (если не выиграли, то минус 50 რუბლი ბილეთზე, если выиграли, то приз — 50 р. ბილეთზე)
  • ბოლო S სვეტში ჩვენ განვიხილავთ მთელი თამაშის საერთო შედეგს, როგორც კუმულატიურ ჯამს, რათა დავინახოთ პროცესის დინამიკა.

და მთელი ამ სტრუქტურის გასაცოცხლებლად, ჩვენ გვჭირდება პატარა მაკრო. ჩანართზე დეველოპერი (დეველოპერი) აირჩიეთ გუნდი Visual Basic ან გამოიყენეთ კლავიატურის მალსახმობი Alt+F11. შემდეგ დაამატეთ ახალი ცარიელი მოდული მენიუს მეშვეობით ჩასმა – მოდული და იქ შეიყვანეთ შემდეგი კოდი:

Sub Lottery() Dim iGames როგორც მთელი რიცხვი, iTickets როგორც მთელი რიცხვი, i რამდენადაც დიდხანს, t როგორც მთელი რიცხვი, b როგორც მთელი რიცხვი 'объявляем переменные для ссылки на листы Set wsGame = Worksheets("Игра") Set wsNumbers("Генерets) = Worksheets" wsArchive = Worksheets("Тиражи 2022") iGames = wsGame.Range("C1") 'количество тиражей iTickets = wsGame.Range("C2") 'количество билетов во каждом тираже i = 5 'перваблия строwsка ("6:1048576").წაშალე 'очищаем старые данные For t = 1 To iGames For b = 1 To iTickets 'კოპიруем выигравшие номера со სია Тиражи 2022 და გამოაქვეყნე თამაში wsArchive.Resells,1(t). (1, 1). დააკოპირეთ დანიშნულება:=wsGame.Cells(i, 10) 'копируем и вставляем специјалной вставкой значений сгенерированные номера со листа Генератор wsNumbers.Range("G1:L4"). დააკოპირეთ wsGame4,C. .PasteSpecial Paste:=xlPasteValues ​​i = i + 11 შემდეგი b შემდეგი t ბოლო ქვე  

რჩება ყვითელ უჯრედებში სასურველი საწყისი პარამეტრების შეყვანა და მაკრო გაშვება დეველოპერი – მაკრო (დეველოპერი - მაკრო) ან კლავიატურის მალსახმობი Alt+F8.

ლატარიის სიმულაცია Excel-ში

სიცხადისთვის, თქვენ ასევე შეგიძლიათ შექმნათ დიაგრამა ბოლო სვეტისთვის კუმულაციური ჯამით, რომელიც ასახავს თამაშის დროს ფულის ბალანსის ცვლილებას:

ლატარიის სიმულაცია Excel-ში

სხვადასხვა სტრატეგიის შედარება

ახლა, შექმნილი სიმულატორის გამოყენებით, შეგიძლიათ შეამოწმოთ ნებისმიერი თამაშის სტრატეგია რეალურ გათამაშებებზე 2022 წელს და ნახოთ ის შედეგები, რასაც ის მოიტანს. თუ თითოეულ გათამაშებაში თამაშობ 1 ბილეთს, მაშინ "ქლიავის" საერთო სურათი ასე გამოიყურება:

ლატარიის სიმულაცია Excel-ში

აქ:

  • გენერატორი არის თამაში, სადაც ყოველ გათამაშებაში ვირჩევთ ჩვენი გენერატორის მიერ შექმნილ შემთხვევით რიცხვებს (იგივე წონით).
  • რჩეულები არის თამაში, სადაც თითოეულ გათამაშებაში ჩვენ ვიყენებთ ერთსა და იმავე რიცხვებს - მათ, ვინც ყველაზე ხშირად ცდება გათამაშებაში ბოლო ორი წლის განმავლობაში (27, 32, 11, 14, 34, 40).
  • Outsiders - იგივე, მაგრამ ჩვენ ვიყენებთ ყველაზე იშვიათ ჩამოსაშლელ რიცხვებს (12, 18, 26, 10, 21, 6).
  • ცივი – ყველა გათამაშებაში ვიყენებთ ციფრებს, რომლებიც დიდი ხნის განმავლობაში არ ამოვარდნილა (35, 5, 39, 11, 6, 29).

როგორც ხედავთ, დიდი განსხვავება არ არის, მაგრამ შემთხვევითი რიცხვების გენერატორი ოდნავ უკეთესად იქცევა, ვიდრე სხვა „სტრატეგიები“.

Можно также попробовать играть большим количеством ბილეთები როგორც ტირაჟე, чтобы შეასრულოს უფრო მეტი კოლიზება სხვადასხვა ვარიანტში (иногда для этого несколько игроков объединяются ჯგუფში).

ყოველ გათამაშებაში თამაში ერთი ბილეთით შემთხვევით გენერირებული რიცხვებით (იგივე წონით):

ლატარიის სიმულაცია Excel-ში

თითოეულ გათამაშებაში 10 ბილეთის თამაში შემთხვევით გენერირებული რიცხვებით (იგივე წონით):

ლატარიის სიმულაცია Excel-ში

ყოველ გათამაშებაში 100 ბილეთის თამაში შემთხვევითი ნომრებით (იგივე წონით):

ლატარიის სიმულაცია Excel-ში

კომენტარები, როგორც ამბობენ, ზედმეტია - დეპოზიტის გადინება ყველა შემთხვევაში გარდაუვალია 🙂

დატოვე პასუხი