Імітаційне моделювання симуляції розіграшів національної лотереї "Супер Лото"
Написання програмного комплексу імітаційної моделі симуляції розіграшів національної лотереї "Супер Лото". Дослідження можливості виграшу в лотереї. Визначення кількості ставок для повернення затрачених грошей та доцільність проводити системні ігри.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | статья |
Язык | украинский |
Дата добавления | 05.02.2019 |
Размер файла | 198,8 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.Allbest.Ru/
Размещено на http://www.Allbest.Ru/
Размещено на http://www.Allbest.Ru/
Луцький національний технічний університет
Імітаційне моделювання симуляції розіграшів національної лотереї “Супер Лото”
А.Ю. Коцюба, В.В. Матвіюк
м. Луцьк, 2014
Анотація
Засобами C++ Builder та MS Office розроблено програмний комплекс, за допомогою якого можна будь-яку кількість разів проводити розіграші національної лотереї “Супер Лото”. Одержані результати в майбутньому можна досліджувати методами математичної статистики, що дасть можливість відповісти на поставлені в роботі питання.
Ключові слова: імітаційна модель, національна лотерея “Супер Лото”, ADO-технологія, OLE-технологія.
Коцюба А.Ю., Матвиюк В.В. Имитационное моделирование симуляции розыгрышей национальной лотереи “Супер Лото”
Средствами C++ Builder и MS Office разработан программный комплекс, с помощью которого можно любое количество раз проводить розыгрыши национальной лотереи “Супер Лото”. Полученные результаты в будущем можно исследовать методами математической статистики, что позволит ответить на поставленные в работе вопросы.
Ключевые слова: имитационная модель, национальная лотерея “Супер Лото ”, ADO-технология, OLE-технология.
Kotsyuba A. Yu, Matviyuk V.V. Imitation modeling of simulation draws National Lottery “Super Lotto”
By means of C++ Builder and MS Office developed a software package that allows you to any number of times to conduct the draw of National Lottery “Super Lotto”. The results obtained in the future can be studied by methods of mathematical statistics, which give the opportunity to respond to the questions in the question.
Keywords: imitation model, the National Lottery “Super Lotto”, ADO-technology, OLE-technology.
Постановка наукової проблеми та її значення
Поняття імітаційне моделювання, імітаційна модель це терміни одного з найбільш потужних методів дослідження реально існуючих об'єктів, систем самої різної природи і складності. Суть методу полягає в побудові так званої імітаційної моделі досліджуваного об'єкту і цілеспрямованого експерименту з такою моделлю для отримання відповідей на ті або інші питання поставлені перед дослідником. В даній роботі побудована і реалізована імітаційна модель симуляції розіграшів національної лотереї "Супер Лото”. Завдяки цій моделі можна провести дослідження, які б дали змогу відповісти на наступні питання:
- коли і чи можливо виграти у вищевказаній лотереї;
- скільки ставок мінімально потрібно зробити, щоб хоча б повернути витрачені гроші з мінімальною ймовірністю програшу та мінімальними затратами на ставки;
- чи доцільно проводити системні ігри (мається на увазі, що при однакових затратах для випадків системної та звичайної гри, чи буде ймовірність програшу різнитися у вигідну для системної гри сторону);
- якщо доцільно, то яку кількість кульок найкраще вказувати у системній грі.
Звичайно, всі результати ми отримуємо за допомогою так званого генератора псевдовипадкових чисел [-1]. Але експерименти можна робити будь-яку кількість разів та записувати всі результати. При цьому ніяких грошових затрат не буде. В цьому і полягають недолік та перевага симуляції розіграшів побудованої в даній роботі імітаційної моделі.
Крім вищеописаних недоліків та переваг, побудована модель (програмний комплекс) має ще дві досить суттєві переваги:
1. В національній лотереї "Супер Лото” весь час змінюють кількість кульок (номерів), з якої випадковим чином вибирається 6 кульок (номерів). Для нашого програмного комплексу це не проблема. При початковому запуску exe-файла ця кількість вказується. По замовчуванню вона є такою як в сучасних розіграшах.
2. Під час розіграшу 6 різних номерів можна вказувати за допомогою різних алгоритмів. Побудований в даній роботі алгоритм оптимально моделює роботу лототрона (звісно за умови чесного розіграшу): спочатку з масиву всіх впорядкованих необхідних номерів вибирається випадковий, на наступному кроці цей номер вилучається, одержуємо на один номер коротший масив, з яким аналогічно працюємо далі і т.д. Цей алгоритм продовжують до того часу, доки не буде вибрано 6 різних номерів. Подібний процес відбувається і тоді, коли ми хочемо, щоб комп'ютер сам зробив ставки ( АВТО ) для звичайної або системної гри.
Аналіз останніх досліджень та публікацій
У праці [-1] вивчено питання про генератор псевдовипадкових чисел. Щодо ADO-технології та OLE-технології, то ці теорії досить повно розкриті у працях відповідно [-2--5] та [-6, -7]. Основні аспекти мови запитів SQL розглянуто у книзі.
Мета роботи полягає в проектуванні і написанні такого програмного комплексу, який би можна було ефективно використовувати для імітаційного моделювання симуляції розіграшів національної лотереї "Супер Лото”.
Методи розробки
Для підключення БД MS Access до додатку була використана ADO- технологія. Для підключення до додатку табличного процесора MS Excel була використана OLE- технологія.
Виклад основного матеріалу дослідження
Опишемо інтерфейс користувача програми, розробленої засобами C++ Builder [-2--7] та мови запитів SQL [-8]. Даний програмний проект складається з трьох форм: стартової, головної та форми-редактора ставок.
Стартова форма (рис 1) призначена лише для встановлення максимальної кількості кульок.
Введіть максимальний номер:
54т
Рис. 1. Стартова форма
В головній формі (рис. 2) відображаються всі ставки зроблені гравцями та дані про гравців. В ній проходить процес симуляції розіграшу, виводиться інформація про результат, яку в разі потреби можна занести у звіт (xls-файл). Крім того з цієї форми можна викликати форму-редактор ставок. Передбачено автоматичне сортування наборів номерів: як ставок, так розіграшу; автоматичне виправлення помилок: в разі, якщо користувач неправильно зробив ставки; є можливість перезавантаження, якщо користувач захоче самостійно в базі даних виправити свої помилки
Рис. 2. Головна форма
Рис. 3. Форма-редактор ставок
У будь-який час користувач може внести зміни або доповнити базу даних, яку опишемо нижче, та перезавантажити головну форму. Але бувають такі випадки, наприклад, системна гра або режим Авто, коли користувачу для заповнення бази даних необхідна допомога. Саме для цього і створено форму-редактор ставок (рис 3). Тут спочатку необхідно вказати гравця (причому можна добавити нового), а далі вручну або за допомогою режиму і? АВТО створити ставку. Для ручного створення також працює автоматичне виправлення помилок. програмний імітаційний модель виграш лотерея
Після натискання на кнопку "Завантаження номерів у базу даних та вихід” буде для першого гравця створено відповідно ще 28 ставок з різних 6 номерів, відсортованих у порядку зростання, закриється ця форма і відкриється перезавантажена головна форма.
Рис. 4. Фізична модель бази даних
Відповідна база даних складається з двох зв'язаних таблиць (рис 4) та запиту, який містить об'єднану з цих таблиць інформацію та відображається у головній формі. Щодо таблиць, то в першу вносяться гравці (вона відображається у формі-редакторі записів), а в другу - ставки і вибираються гравці, які зробили ці ставки.
Звернемо увагу на ще один досить цікавий факт ADO-технології. Як правило за допомогою цієї технології загрузка бази даних є стаціонарною, тобто потрібно наперед вказати адресу mdb-файла і якщо на іншому комп'ютері за такою адресою нема бази даних, то exe-файл так як потрібно працювати не буде. Нами ж в цій роботі запропоновано дещо інший підхід:
- по-перше, для ефективної роботи даної технологій використані наступні компоненти: TADOConnection, TDataSource, TADODataSet, TADOQuery, TADOCommand, TDBNavigator, TDBGrid;
- по-друге, перед початковим завантаженням або перезавантаженням форми, на якій буде відображено інформація з бази даних (залежно від SQL-запиту), необхідно встановити у властивості Connected компоненти TADOConnection значення false (це лишнім не буде);
- по-третє, представимо фрагмент коду програми, у якому відловлюється поточна адреса exe-файла і приймається, що вона є адресою mdb-файла:
ADOConn->Connected = false;
String filename = "BAZZA.mdb";
if (!FileExists(ExtractFilePath(Application->ExeName)+filename)){
AnsiString сіз="Файла бази даних не виявлено \n\n\t" +filename;
ShowMessage(ds) ;}
else {
String WayToBase=ExtractFilePath(Application->ExeName)+filename;
ADOConn->ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;
User ID=Admin; Data Source="+WayToBase+";
Mode=Share Deny None; Extended Properties = \"\";
Jet OLEDB:System database=\"\";
Jet OLEDB:Registry Path=\"\";
Jet OLEDB:Database Password=\"\";
Jet OLEDB:Engine Type=5;
Jet OLEDB:Database Locking Mode=l;
Jet OLEDB:Global Partial Bulk Ops=2;
Jet OLEDB:Global Bulk Transactions=l;
Jet OLEDB:New Database Password =\"\";
Jet OLEDB:Create System Database=False;
Jet OLEDB:Encrypt Data- base=False;
Jet OLEDB:Don't Copy Locale on Compact=False;
Jet OLEDB: Compact Without Replica Repair=False;
Jet OLEDB:SFP=False;";
ADOConn->Connected = true;
ADODataSet->Active = true;
ADODataSet->Open();}
Висновки
Як правило імітаційне моделювання є найбільш ефективним, коли аналітичне дослідження ускладнене або неможливе. За допомогою системи диференціальних рівнянь для ймовірностей станів або рівнянь алгебри для ймовірності станів відповісти на вище поставленні питання досить важко, а деколи і неможливо. Тому доцільно використовувати ідею методу Монте-Карло, яка є надзвичайно простою і полягає у тому, щоб випадковий процес моделювати за допомогою так званих "розіграшів”, тобто за допомогою деякої процедури, яка дає випадковий результат. Особливо ця методика оправдовує себе, коли можна зробити таке програмне забезпечення, яке дасть змогу проробляти велику кількість "розіграшів” і аналізувати їх засобами математичної статистики.
Література
1. Герасимчук О.І. Генератори псевдовипадкових чисел, їх застосування, класифікація, основні методи побудови і оцінка якості / О.І. Герасимчук, В.М. Максимович // Науково-технічний журнал "Захист інформації”, 2003, №3, С. 29-36.
2. Пахомов Б. Самоучитель C/C++ и C++ Builder 2007 / Б. Пахомов. - Санкт-Петербург: "БХВ Петербург”, 2008. - 672 с.
3. Послед Б.С. C++ Builder 6. Разработка приложений баз данных/ Б.С. Послед. - Санкт- Петербург: "ДиаСофт”, 2003. - 310 с.
4. Хоменко А. Работа с базами данных в C++ Builder / А. Хоменко, С. Ададуров. - Санкт- Петербург: БХВ-Петербург, 2006. - 475 с.
5. Бруно Бабэ. Просто и ясно о Borland C++ / Бабэ Бруно. - М., 1996. - 400 с.
6. Кириллов В.В. Структуризованный язык запросов (SQL) / В.В. Кириллов. - Санкт-Петербург: ИТМО, 2005.- 80 с.
Размещено на allbest.ru
Подобные документы
Визначення найкращого режиму роботи системи обробки повідомлень. Представлення моделі у вигляді системи масового обслуговування. Визначення структури моделі. Обмеження на зміну величин. Програмна реалізація імітаційної моделі. Оцінка адекватності.
курсовая работа [153,9 K], добавлен 29.01.2013Описано вказану систему, побудована її концептуальна модель, зроблено формальний опис системи та імітаційної моделі, виконано програмування моделі системи та наведено результати моделювання.
курсовая работа [73,1 K], добавлен 16.06.2007Понятие и отличительные особенности супер-ЭВМ, история и основные этапы его разработок, современное состояние и тенденции, предъявляемые требования. Cray Titan как самый мощный суперкомпьютер современности, оценка его возможностей и обзор функций.
презентация [326,5 K], добавлен 21.10.2013Розробка системи для побудови моделі та одержання статистичних звітів про процеси в системах, побудованих за принципом Triple Play. Середовище Delphі як засіб проектування інтерфейсу. Особливості написання програм. Можливості програмного продукту.
дипломная работа [3,4 M], добавлен 22.10.2012Класифікація інформаційних систем. Дослідження особливостей мови UML як засобу моделювання інформаційних систем. Розробка концептуальної моделі інформаційної системи поліклініки з використанням середи редактора програмування IBM Rational Rose 2003.
дипломная работа [930,4 K], добавлен 26.10.2012Складання концептуальної моделі процесу надходження повідомлень. Формальний опис процесу надходження повідомлень до ЕОМ. Опис імітаційної моделі процесу надходження повідомлень. Програмування імітаційної моделі, яка працює в системі управління.
курсовая работа [75,0 K], добавлен 22.06.2007Роль імітаційного моделювання в дослідженні складних технічних систем. Види оцінки правильності моделі. Створення програми, яка прогнозує рух фізичного маятника з вібруючою точкою підвісу шляхом чисельного інтегрування його диференційного рівняння.
курсовая работа [758,6 K], добавлен 06.08.2013Опис результату розробки архітектури пристрою та його структурної схеми на рівні міжрегістрових передач. Система для виконання тестування пристрою, результати його симуляції у формі часових діаграм. Cинтез розробленої VHDL-моделі пристрою в ПЛІС.
курсовая работа [1,2 M], добавлен 03.03.2015Дослідження складної системи "Велосипед" з елементами, з'єднаними детермінованим зв'язком. Побудова цільової функції для оптимізації системи, визначення її надійності та вартості приросту надійності її елементів. Блок-схема процесу функціонування системи.
курсовая работа [99,0 K], добавлен 01.03.2014Використання комп'ютерного моделювання. Особливості проектування моделі автоматичної системи управління технологічним процесом. Визначення кількості пропущених через відмову даних та часу знаходження системи в загальмованому стані. Опис алгоритму моделі.
контрольная работа [501,7 K], добавлен 13.01.2014