[发明专利]一种多面额出钞算法在审
申请号: | 201610295171.0 | 申请日: | 2016-05-06 |
公开(公告)号: | CN107346581A | 公开(公告)日: | 2017-11-14 |
发明(设计)人: | 周广;王建荣;谢清钟;徐德银 | 申请(专利权)人: | 广州御银科技股份有限公司 |
主分类号: | G07D11/00 | 分类号: | G07D11/00 |
代理公司: | 广州致信伟盛知识产权代理有限公司44253 | 代理人: | 伍嘉陵 |
地址: | 510530 广东省广州市天河区五山*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 多面 额出钞 算法 | ||
技术领域
本发明涉及一种出钞算法,尤其涉及一种用于自动柜员机的多面额出钞算法。
背景技术
目前市面上的自动柜员机大多仅支持100元面额的钞票出钞,不支持20元,50元等面额的零钞取款,该种缺憾对实际银行卡用户存在一些不便。一方面是,在例如需要取款550元时,在ATM机上必须取款600元,差额则需用户在使用时自行找零,带来不便;另一方面则是,银行卡内余额不足100元时,无法取款,对于一些不再继续使用的银行卡,卡内的少量余额因不足100元无法在ATM机上取款,而去银行人工取款又过于麻烦,这种卡内的少量余额何去何从变成为银行卡使用者的一种困扰。
为解决上述问题,我们需要一种可以任意金额取款支持各个面额出钞的出钞算法。
发明内容
为了解决上述技术问题,本发明目的在于提供一种多面额出钞算法。
本发明所述的一种多面额出钞算法,其特征在于,包括以下步骤:
a)、将N个不同面额的钞箱编号;
b)、根据面额大小将对应钞箱排序,面额较大的钞箱靠前排序,得到序号1~n~N;
c)、依序号读取钞箱对应的当前张数M1~Mn~MN,读取所需取款总额并将取款总额对初始值A赋值;
d)、根据初始值A对排序后序号为n的钞箱求取款张数Mn’;
计算余额Y=A-Mn’×对应面额,令余额Y对初始值A赋值,令序号n+1;
e)、重复步骤d,直至余额Y=0时结束流程。
所述步骤d,取款张数Mn’由初始值A对序号n对应的钞箱面额求商得到:Mn’=A/对应面额;当商大于当前张数Mn时,取款张数Mn’=Mn;当商不大于当前张数Mn时,取款张数Mn’为商。
所述步骤d计算取款张数时,序号n由1开始计数。
所述算法在上述基础上,当余额Y等于初始值A,并且序号n达到最大值N时,将序号n-1,同时将取款张数Mn’-1;若此时取款张数Mn’=0,则序号n进一步-1。
其优点在于,可以实现现有各种面额的灵活使用。提高了货币周转的效率,柜员机不再局限于百元面额的服务。采用了矩阵作为基础算法,确保出钞的准确性。通过该算法,不管钞箱内存放的各种面额的张数具体是多少,只要其总额不比所需数额少,即可实现取款,灵活度非常高。
附图说明
图1是本发明的算法流程图。
具体实施方式
本发明所述的一种多面额出钞算法,其工作流程如图1所示。先将数据初始化,初始化步骤包括将N个不同面额的钞箱进行编号;包括将初始值A置零。由于在柜员机使用的过程中,同一个钞箱会在清空一种面额后,有可能装入其他面额的钞票,因此同一个编号的钞箱不能保证其每次都装有固定面额的钞票,但可以确保一个钞箱内存放的面额都是相同。所以在编号后,需要对钞箱进行排序。排序依据其装有的面额大小为准,较大面额的钞箱排序靠前,例如目前最大的100元面额钞箱会得到1的序号,50元面额钞箱会得到2的序号等,面额越小,钞箱序号越大,有N个不同面额的钞箱的话,其面额最小的钞箱得到最大的序号N。
读取每个钞箱对应的当前面额张数Mn,例如1号钞箱存有X1张钞票,记为M1 =X1;n号钞箱存有X2张钞票,记为Mn =X2;N号钞箱存有X3张钞票,记为MN =X3等。获取用户需求的取款总金额,并且以该总金额对初始值A赋值;例如用户需要取款3456.12元,就将3456.12赋值到A,即,令A=3456.12。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广州御银科技股份有限公司,未经广州御银科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610295171.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种用于垃圾气力输送系统的旋转屏
- 下一篇:一种均衡出钞算法