2 курс 1 семестр, ЯиСП 2, симулятор банкомата.
- Смоделировать работу банкомата.
Для банкомата необходимо хранить информацию о количестве купюр разного достоинства.
К банкомату случайным образом подходят люди.
Интервалы времени между появлением клиентов распределены по нормальному закону. И запрашивают суммы в пределах от N до M (задается в программе) такие, что их потенциально можно набрать разными купюрами.
Сумма всегда выдается наиболее крупными купюрами.
Если в данный момент времени запрашиваемую сумму набрать нельзя, пользователь получает отказ.
И тогда он может попытаться заказать другую сумму, но не более 2-х раз.
Обслуживание каждого клиента (один запрос) занимает константное кол-во времени.
Если к банкомату подходит клиент, а с банкоматом в данный момент времени работает другой клиент, то первый становится в очередь.
Очередь не может быть более 5 клиентов.
Визуализировать процесс. Выбрать и обосновать используемые структуры данных (собственные классы, списки и словари).