- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
程序设计方法专题实验报告
班级:电信(硕)81班
姓名:尹鑫
学号 实验指导教师 : 徐宏喆
唐亚哲
吴茜媛
实验地点:计算机教学中心
实验结束日期:2009年7月23日
联系电话:程序设计方法专题实验
一 实验任务
题目一:模拟图形界面的计算器
要求:
利用图形函数模拟一个计算器界面;
实现 + , - , * , / , C , CE 等数学计算功能;
输入格式为yyyy/mm/dd的数据,然后按‘-’运算按钮,再输入一个yyyy/mm/dd的数据,紧接着按‘=’按钮即可得到两个日期之间相差的天数。例如
2009/03/20-2009/03/19=1
2009/03/20-2009/03/21=-1
题目二:寻找基数
问题描述:
同一个数会由于采用不同的基数,而使得其表现形式完全不一样。我们熟悉的基数有10进制,12进制,60进制,2进制,8进制和16进制。比如数据12,如果我们用2进制表示,则它就是1100;如果用3进制表示就是110;如果用8进制表示则是14。本题目的任务就是与数的进制(也就是基数)有关。
本题目会给大家很多个数对(假设每个数对的数用X和Y表示),程序需要解决的问题就是为X和Y各选择一个最小的基数,以使得这两个数在其选择的基数上是一对相等的数。
例如,12和5这个数对,我们可以为12选择基数3,为5选择基数6,这样一来12(base 3)=5(base 6),因为12(base 3)就是10进制数5,而5(base 6)也是10进制数中的5。
要求:
输入:程序输入通过文件完成。文件中的每一行都包含一个数对X和Y,两个数通过一个或多个空格符分割,与X和Y相关联的有效基数范围为2~36。X和Y的合理数值表示字符包括0~9和A~Z(表示数值10~35)。文件的最后一行用一个数字0表示输入结束。
输入样例文件(base.in):
5
A
34
456
1 2
10 2
0
输出:结果存放在一个文件中。该文件中的每一行对
应为输入文件中相应的那行数对,输出的格式按照下面的样例文件即可。
输出样例文件(base.out):
12(base 3)=5(base 6)
10(base 10)=A(base 11)
12(base 17)=34(base 5)
123 is not equal to 456 in any base 2…36
1 is not equal to 2 in any base 2…36
10(base 2)=2(base 3)
题目三:“贪吃蛇”游戏
要求:
一条蛇在一个密闭的围墙内,食物在墙内随机出现;
通过键盘的光标键控制蛇的移动,可以在上、下、左、右四个方向移动;
蛇头撞到食物,则表示蛇吃掉了食物,得10分,并且蛇的身体长长1节,接着食物再随机出现;
蛇移动过程中,若撞到墙或者自己的身体,则游戏结束。
二 实验内容
题目一所涉及的知识点:
由于题目要求利用图形函数制作计算机界面,因此,该题目所涉及的主要知识点为图形函数的调用,其次是定义一系列加减乘除等运算函数并调用.在计算日期时,采用计算所给日期到公元0年0月0日之间的天数然后将所得天数相减的方法,所以在计算天数时要考虑平年闰年的情况,还要考虑每个月的天数不同.最后,所有的计算结果都存入一个字符型数组中,并在计算器的显示框内输出.
题目二所涉及的知识点:
首先读取文件,将读取的数以字符串的形式存入两个数组中,并比较两个数的大小,找出两个数中最大的字符,然后在从最大字符的下一个字符到Z等一系列的基下,将这两个数分别表示为十进制的数,并比较大小,最后将比较结果以文件的形式输出.
所以,所涉及的知识有文件的读取,字符的比较,数在不同基下的转换,结果以文件形式输出等等.
题目三所涉及的知识点:
贪吃蛇在运动过程中,靠方向键控制,只在墙内运动,并且蛇每吃到食物则蛇身增长一节,当蛇头撞到墙上或自己的身体上时,游戏结束.
所以,该程序所涉及的知识有,利用函数生成围墙,并将围墙内的空间划分为一系列的小方块,利用ShowSnake()函数将蛇显示在界面内,利用SetFood()函数设置食物,设置方向键以控制蛇的运行,定义函数以判断蛇头是否撞墙,或者撞到自己的身体,如果撞到,则游戏
文档评论(0)