饮料自动售货机系统设计

上传人:M****1 文档编号:510439147 上传时间:2023-07-31 格式:DOCX 页数:12 大小:174.54KB
返回 下载 相关 举报
饮料自动售货机系统设计_第1页
第1页 / 共12页
饮料自动售货机系统设计_第2页
第2页 / 共12页
饮料自动售货机系统设计_第3页
第3页 / 共12页
饮料自动售货机系统设计_第4页
第4页 / 共12页
饮料自动售货机系统设计_第5页
第5页 / 共12页
点击查看更多>>
资源描述

《饮料自动售货机系统设计》由会员分享,可在线阅读,更多相关《饮料自动售货机系统设计(12页珍藏版)》请在金锄头文库上搜索。

1、饮料自动售货机系统设计摘要:设计一个饮料机,实现计算应找钱数,找币,以及销售量统计等多种功能。1. 引言自动售货机像磁卡电话、银行柜员机一样,以方便、新颖、文明、昼夜服务等特点, 成为发达国家不可缺少的便民配套设施。如今的自动售货机可以为顾客提供多种服务。顾 客可以根据自己的需要选择商品并投入钱币,售货机接收钱币,售出商品。2. 问题描述该设计模拟自动售货机的工作原理和方式,完成出售商品、接收钱币、找零钱等功能。 与系统交涉的人有两类:送货员和顾客。送货员在每周固定时间查看售货机中的饮料数量和钱币数量情况,并根据计划适当添 加饮料。同时 ,送货员也可以根据需要通过重新初始化增加饮料的种类 ,或

2、修改饮料的价 格。顾客根据需要选择饮料,投入钱币,并等待售货机的响应。售货机(所设计的系统) 所做的响应:如果售货机中没有该种饮料,则退回上一步,交易失败。否则,如果售货机 中有该种饮料,则判断顾客所投钱币是否足够,如果不够,则提示顾客交易失败,并退回 上一步。如果顾客所投的钱币够所购买的饮料,则售出饮料并询问是否继续购买。如果不 需购买则进行找币,返回初始界面。当然,实际生活中的售货机可能有更加强大的功能和更完善的处理,这里只模拟一个 售货机系统,所以只实现其核心原理,并练习和提高分析问题能力和编程能力。问题模型如图所示系统査看价格r=3. 数据结构设计3.1类结构体说明采用了iostrea

3、m.h 和 建立了一个饮料机类class yljpublic:ylj()count=0;ylj(string a,double b)name=a;price=b;count=0;void disp();void goumai();void gm();int count;string name;double price;int stock;Count为销售量计数器,name为饮料名称,price为饮料价格,stock为饮料存货量。3.2函数说明disp()函数用于输出对象。 goumai();函数用于购买时的统计。 gm();函数用于当购买失败时的返回处理。 zhaobi(int a)用于对元的

4、找币。 zhaobj(int a)用于对角的找币。4. 算法设计#include #include using namespace std; double sum;#define password 123456 class yljpublic: ylj()count=0; ylj(string a,double b)name=a;price=b;count=0; void disp();void goumai();void gm();int count; string name; double price;int stock;void ylj:disp() /输出函数存货量stocke ndl

5、;cout饮料:name价格pricevoid zhaobi(int a) /找币函数(元)int b,c; cout 找币为e ndl;b=a/50;c=a%50;if(b)coutb张五十元e ndl;b=c/20;c=c%20;if(b)coutb张二十元e ndl;b=c/10;c=c%10;if(b)coutb张十元e ndl;b=c/5;c=c%5;if(b)coutb张五元e ndl; coutc张一元endl;void zhaobij(int a) /找币函数(角)int b,c;b=a/5;c=a%5;if(b)coutb枚五角e ndl;coutc枚一角n;cout进行饮料

6、机初始化,请输入有几种饮料e ndl;a=new yljn;/分配空间for(i=0;in;i+) /对饮料机进行初始化cout请输入第i+1种饮料名称ai.name;cout请输入第i+1种饮料价格ai.price;cout请输入第i+1种饮料现有量ai.stock;if(i=(n-1)cout 输入完毕e ndl;cout目前已有饮料明细为e ndl;for(i=0;in;i+)ai.disp();while(x!=3) /界面系统cout请选择您的身份:进货员1顾客2如果要终止系统请按3x;switch(x)case 1:/进货员系统cout请输入密码pw;if(pw=password)

7、while(xx!=3)cout目前已有饮料明细为e ndl;for(i=0;in;i+)ai.disp();cout请输入要进行的操作:1查询销售统计 2补货 3返回上一级 xx;switch(xx)case 1:for (i=0;in;i+)couta i.n ame售出ai.cou nt瓶e ndl;break;case 2:for (i=0;in;i+)couta i.n ame补货多少瓶b;ai.stock+=b;break;case 3:break;break;else cout密码错误e ndl;break;case 2:while(xz!=4) /顾客系统cout目前已有饮料明

8、细为e ndl;for(i=0;in;i+)ai.disp();cout当前饮料机中共有余额mo neye ndl;cout请输入要进行的操作:1购买 2找币 3查询销售统计 4退出系统xz;switch(xz)case 1:cout是否已投币是1,否2pd;if(pd=2)cout请投币money; while(choicen)cout请选择购买第几种饮料choice;if(choicen)cout输入错误,请重新输入e ndl; c=choice-1;cout您所购买的是e ndl;ac.disp();ac.goumai();money-=ac.price;if(money0)cout钱不

9、够啦买不起,请继续投币e ndl; money+=ac.price;ac.gm();else if(ac.stock0)cout抱歉没货啦请选择别的饮料e ndl; money+=ac.price;ac.gm();choice=0;break;case 2:cout应找mo ney 元e ndl;yuan=money;jiao=(money-yuan)*10;zhaobi(yuan);zhaobij(jiao);money=0;break;case 3:for (i=0;in;i+)couta i.n ame售出ai.cou nt瓶e ndl;cout总计销售额为sum元e ndl; case

10、 4:break;break;case 3:break;5. 程序运行的结果5.1饮料机初始化5.2 身份选择5.2.1 顾客界面4査询销售统计购买 2-找币查询销售统计 4退岀系统4退岀系统介格2-5呑货量如r进货员1顾客2如果要终止系统请按3是市土冃052格97Mi饮広目扇10仔量1.4货fi3_存4-一-退出系统0 1a .巻余价霑 細红 S 明冰痂箕的 曙达可中行 炊师年事机进 有康美显要 已3 3 IT 9 1 格 fes - 价辺余价蟹 細红 S 明冰粤的 套曙达可史JfT 的年唸师鲁机进 买美有康美貝聲 购.已-枚八 盜nl刖存货量価存货量如jg14看货量爭2-找币3S询销售统计4退出系统买 购买 购卜一查询销售统计a-找币5贺3.存 格价2格 价为氽价霑 细红 畫 乐明冰番品 是叮聲.达可中行 的事饮师年事机进 买百有康美百卿要 购已- V鬣捷 F.4.附翹 洛 昇 瑕貝以饮警请2-找币3-查询销售统计 4還出系统3 直询销售统计 4 退出系统3-一返回上一级1购买否已投币是一-1,否-22找币计3-一返回上一级存货量灯義计2补货y53S续继茶价 9 厂 41 /K-/K 应找玷朗五二一五s# Aff B 明冰養萌 詈达可中行 饮师年事机进 i角島康美姐 :丿八前M.n:wB ;请f

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号