- 1、本文档共22页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
面向对象程序设计课外实践报告
项 目 名 称:
所 在 班 级:
小 组 成 员:
指 导 教 师:
起 止 时 间:
目 录
项目基本信息 2
一、问题描述及分析: 3
二、功能模块及结构描述: 3
功能模块: 3
结构描述: 3
三、主要流程描述: 4
流程图: 4
四、使用说明: 5
五、问题及解决方法 8
问题1: 8
解决方法: 8
问题2: 8
解决方法: 8
六、课外实践总结: 9
七、源代码: 9
参 考 文 献 20
项目基本信息
项目名称 设计一个排课程序 项目简介 1.问题描述
设计饮料自动售货机系统模拟自动售货机的销售过程。首先由顾客投币。接下来顾客选择要购买的饮料,如果投币金额足够并且所购饮料存在,则提示用户在出口处取出饮料,同时找零钱。如果投币金额不足,则显示信息“金额不足”,如果所购饮料已经售完,显示售完信息“对不起,饮料已经卖完”。
2.基本要求
⑴只接受10元、5元、2元、1元和0.5元的硬币;
(2)顾客一次只能投入一种上述的纸币或者是硬币,当用户重复的进行投币时金额累加。
(3)销售的饮料包括5种:可口可乐(2元),百事可乐(2元)、橙汁(3元)、咖啡(5元)、纯净水(1.5元);
(4)系统通过必要的提示信息,提示用户完成相应的操作。
(5)如果顾客所购买饮料已经售完,则提示用户是否要购买其他的饮料。
(6)完成第一次售货后,系统自动进行结算找零。
(7) 实现一次购买多种商品的功能。
3.测试数据
小组成员 任务分工 xxx:钱币类的实现,程序的调试,程序的代码框架,部分其它类中函数实现的协助
xxx:商品信息类的实现,图片的制作,部分其它类中函数实现的协助
xxx:自动售货机类的实现,资料的查找,部分其它类中函数实现的协助
一、问题描述及分析:
首先提示用户投币,然后用户选择要购买的饮料,先检查钱数是否足够,如果不够就提示用户“余额不足”,并且提示用户是否继续投币然后购买,如果是就继续执行购买操作,否则退出程序,且提示用户取回自己的钱;如果钱数足够,再判断所购饮料是否存在,如果存在就结算钱数,然后询问用户是否还要购买其它饮料,如果所购饮料不存在就给出售完信息“对不起,该饮料已经售完”,询问顾客是否选择其它饮料,如果是就继续执行购买操作,否则退出程序。
二、功能模块及结构描述:
功能模块:
实现钱的各种处理
实现商品的各种处理
实现自动售货机的各种处理
判断输入的是否为钱,是否为购买饮料的操作,是否为再次购买,是否为一次购买多种商品
结构描述:
class Money(钱币类)
{
钱的找零
钱的累加
钱的重置
获取钱数
}
2. class Product(商品信息类)
{
获取产品的名称
获取产品的数量
更改产品的数量
判断产品是否还有剩余
}
3. class Machine(自动售货机类)
{
继承钱币类和商品信息类
重新定义商品信息类和钱币类的虚函数
给出必要的机器提示信息
}
三、主要流程描述:
流程图:
图1 系统的操作流程图
Y
Y Y Y Y
N N N N N
Y
N
Y
N
图2 主要算法“结算找零”的操作流程图
四、使用说明:
程序运行后,进入界面:
图3 系统进入界面
图4 没有投币就选择购买时提示“金额不足”
图5 完成多次购买,并退出
图6 第一次操作完成,进行第二次操作
图7 所购饮料已经卖完,提示用户购买其它饮料
在如上所示的界面下,根据提示进行基本的操作。
五、问题及解决方法
问题1:解决方法:问题2:解决方法:#ifndef MARKET_H_H
#define MARKET_H_H
#include <string>
#include <iostream>
using namespace std;
extern bool isAgain;
extern bool isMore;
class Machine;
class Money
{
public:
Money(){}
Money(double p);
virtual void Change(int m,Machine *info);
void PutMoney(double n);
double GetMoney();
void WarnPrompt();
void CurrentMoney();
void Reset();
private:
double money;
};
c
1亿VIP精品文档
相关文档
最近下载
- 苏教版小学数学三年级上册课时同步口算题卡及答案(全册).doc
- 广东]办公楼幕墙工程施工进度计划网络图、横道图-.pdf VIP
- 2023年大连市西岗区国有资本投资运营集团有限公司招聘考试试题及答案解析.docx
- 医药领域腐败问题集中整治工作自查自纠问题清单 - - .xlsx VIP
- 西城2021-2022小学四年级期末英语.pdf VIP
- 舌诊图解中国中医学科资料.pdf
- 2023年纪念改革开放45周年精品培训PPT模板.pptx
- 牛津译林英语七年级上册《Unit5Let'scelebrate》教案.doc
- 新道虚拟商业社会环境vbse财务综合实践信息化竞赛平台题库制作操作手册.pdf
- 幼儿园食品安全教育培训课件 食堂食品安全培训PPT课件(带动画).ppt
文档评论(0)