| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1142 人关注过本帖
标题:C++编程作业,跪请高手帮忙
取消只看楼主 加入收藏
reno2007x
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2008-9-4
收藏
 问题点数:0 回复次数:0 
C++编程作业,跪请高手帮忙
1、    编写一个程序模拟超市的收银系统。具体要求如下:(1)提示输入顾客买的商品名称和单价(以元为单位),直到所有购买商品输入完毕(空格键表示输入完毕)。(2)在屏幕上输出顾客购买的所有商品的名称和单价,每种商品的总价,顾客应付钱数;(3)提示输入实际交的钱数,计算应找钱数并显示。(4)按回车键返回第一步,按ESC 键推出程序运行。
程序运行结果如下所示:

输入商品名称:薯片
输入单价:1.00
输入数量:10
输入商品名称:洗衣粉
输入单价:9.8
输入数量:1
(按空格键,退出输入过程)
商品名称           单价          数量         总价
薯片               1.00           10            10
洗衣粉                9.8               1            9.8
应付:                19.8(元)
输入实际付:  20元
找零:0.2元
(按回车键返回第一行)
商品名称:×××
。。。

(按ESC 则退出)




2、    编写一个自动点歌系统
具体要求:创建两个类PlayList 和 JukeBox.。PlayList类用数组放一组字符串,还记录了当前字符串的个数。这个类中要设计方法完成以下功能:增加一个字符串,删除一个字符串,获得指定位置的字符串,获得当前字符串的个数,检查字符串数组是否为空,是否已满。其他内容见UML图:
 
JukeBox类用来测试PlayList类,,它模拟点歌操作。每一个字符串代表歌名。
程序首先提示用户输入歌曲的最大个数,然后创建Pllayist对象。接着程序允许用户选择:

[1] 增加一首歌曲
[2] 播放第一首
[3] 显示歌曲列表
[4] 退出

选项 1, 输入歌曲的名字和歌手的名字
选项 2 显示第一首歌的名字,然后删除
选项 3 显示当前所有歌曲列表
选项4:显示:再见,退出程序

程序运行示例:

*** 点歌台 ***
歌曲最大个数: 2
[1] 增加歌曲
[2] 播放第一首
[3] 显示歌曲列表
[4] 退出
选择 [1-4]: 3
*** 没有歌曲 ***
[1] 增加歌曲
[2] 播放第一首
[3] 显示歌曲列表
[4] 退出
选择 [1-4]: 1
输入歌曲名称和歌手名字 – 周杰伦:听妈妈的话
*** 加入歌曲 ***
周杰伦:听妈妈的话
[1] 增加歌曲
[2] 播放第一首
[3] 显示歌曲列表
[4] 退出
选择 [1-4]: 1
输入歌曲名称和歌手名字 – S.H.E:Super Star
*** 加入歌曲 ***
S.H.E:Super Star
[1] 增加歌曲
[2] 播放第一首
[3] 显示歌曲列表
[4] 退出
选择 [1-4]: 1
*** 不能增加,歌曲表已满 ***
[1] 增加歌曲
[2] 播放第一首
[3] 显示歌曲列表
[4] 退出
选择 [1-4]: 2
***现在播放 ***
周杰伦:听妈妈的话
[1] 增加歌曲
[2] 播放第一首
[3] 显示歌曲列表
[4] 退出
选择 [1-4]: 3
***当前歌曲列表 ***
S.H.E:Super Star
[1] 增加歌曲
[2] 播放第一首
[3] 显示歌曲列表
[4] 退出
选择 [1-4]: 1

输入歌曲名称和歌手名字 – 周杰伦:发如雪
*** 加入歌曲 ***
周杰伦:发如雪

[1] 增加歌曲
[2] 播放第一首
[3] 显示歌曲列表
[4] 退出
选择 [1-4]: 3

*** 当前歌曲列表 ***
S.H.E:Super Star
周杰伦:发如雪
[1] 增加歌曲
[2] 播放第一首
[3] 显示歌曲列表
[4] 退出
选择 [1-4]: 2
*** 现在播放 ***
S.H.E:Super Star
[1] 增加歌曲
[2] 播放第一首
[3] 显示歌曲列表
[4] 退出
选择 [1-4]: 6
*** 无效操作 ***
[1] 增加歌曲
[2] 播放第一首
[3] 显示歌曲列表
[4] 退出
选择 [1-4]: 4
*** 欢迎再次光临,再见 ***
 
}



3、    定义类描述有限状态自动机,状态的输入和输出关系可以描述为链表数据成员:
class STATE;
class LIST{
LIST *next;
char input;
STATE *output;
LIST(char in, STATE *out); //私有,仅供STATE使用
~LIST();
friend STATE;
}
class STATE{
char *name ;//状态名
LIST *list; //输入及输出列表
static STATE *error;//自动机陷阱
public:
void enlist (char in, STATE *out);//插入list
const STATE *next(char in) const; //输入in转移到下一个状态
const STATE start (char)const;//启动有限自动机
STATE(char *name);
~STATE();
}

使用有限自动机编程解决如下问题:有一人带着狼,羊和草来到河的左岸,左岸只有一条无人摆渡的船。这个人要从左岸过河到右岸,可是这条船最多只能装一个人河其他三者之一,否则便会沉没。如果没有人看管,狼会吃掉羊,或者羊会吃掉草。问如何过河才能保证羊和草的安全。
提示:作为有限状态自动机的输入,人单独过河用字符m表示,人带狼过河用字符w表示,人带羊过河用字符s表示,人带草过河用字符g表示,声明有限自动机夫人start,stop以及error状态对象,如果start.start(“smwsgms”)=&stop,则过河成功,否则如果start.start(“smwsgms”)=&error,则过河失败。





那位大哥大姐能帮小弟下
   您弄好之后可以发代码到我的邮箱  reno2007x@
  忘了说了,这 是小弟远程教育科目 面向对象程序设计 的题目

[[it] 本帖最后由 reno2007x 于 2008-9-4 22:27 编辑 [/it]]
搜索更多相关主题的帖子: 作业 
2008-09-04 22:26
快速回复:C++编程作业,跪请高手帮忙
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.025332 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved