超市找零简单算法

来源:互联网 发布:网站源码下载3ggg 编辑:程序博客网 时间:2024/05/20 03:06
/*找零最佳组合*SandyFeng*2012.5.32*/#include "iostream.h"void Dispose(float m_Money);void main(){float m;//需要找零RMBfloat m_R;//顾客购买货物价格float m_P;//顾客付款的RMB//确定处理数据cout<<"货物价格: ";cin>>m_R;cout<<"顾客付款金额:";cin>>m_P;//进行初步数据类型判断if (m_P < m_R){cout<<"付款不够!"<<endl;}else if (m_P == m_R){cout<<"金额合适无需找钱"<<endl;}else{m = m_P - m_R;Dispose(m);}}// End of mainvoid Dispose(float m_Money){//初始化货币int m_50 = 0;int m_20 = 0;int m_10 = 0;int m_5 = 0;int m_1 = 0;int m_05 = 0;int m_01 = 0;//极简写法//for (; m_Money>=50; m_50++,m_Money -= 50)//{}//计算找零50的张数while (m_Money>=50){m_50++;m_Money -= 50;}//计算找零20的张数while (m_Money>=20){m_20++;m_Money -= 20;}//计算找零10的张数while (m_Money>=10){m_10++;m_Money -= 10;}//计算找零5的张数while (m_Money>=5){m_5++;m_Money -= 5;}//计算找零1的张数while (m_Money>=1){m_1++;m_Money -= 1;}//计算找零5毛的张数while (m_Money>=0.5){m_05++;m_Money -= 0.5;}//计算找零1毛的张数while (m_Money>=0.1){m_01++;m_Money -= 01;}cout<<"需要五十的 "<<m_50<<"张"<<endl;cout<<"需要二十的 "<<m_20<<"张"<<endl;cout<<"需要一十的 "<<m_10<<"张"<<endl;cout<<"需要五元的 "<<m_5<<"张"<<endl;cout<<"需要一元的 "<<m_1<<"张"<<endl;cout<<"需要五毛的 "<<m_05<<"张"<<endl;cout<<"需要一毛的 "<<m_01<<"张"<<endl;}
今天上课,老师讲软件测试的时候说了下这个。笨笨的写了这个算法。欢迎大家提出意见或建议。
原创粉丝点击