Какой алгоритм выдачи денег у обычного банкомата? Как он определяет, сколько купюр и какого номинала давать?
Процесс выдачи купюр выглядит так. 
Клиент вставляет в банкомат карту, после чего срабатывает считывающее устройство. Банкомат устанавливает связь с банком клиента и сообщает данные карты. Если операция по снятию денег одобрена, диспенсер извлекает купюры из кассет, пересчитывает и выдает получателю.
Чтобы определить количество и номинал нужных купюр, банкомат использует диспенсер. Это устройство вытягивает необходимые банкноты, после чего их подлинность проверяется специальными датчиками.