一、题目:序列小游戏
二、目的与要求
1. 目的:
(1)让学生体会到鸽巢原理(或抽屉原理)的乐趣并使学生更加系统地理解和掌握C++语言的函数间参数传递方法、数组和指针的应用等编程技巧。培养学生综合利用C++语言进行科学计算,使学生将所学知识转化为分析和设计简单实际问题的能力,学会查资料和工具书。
(2)提高学生建立程序文档、归纳总结的能力。
(3)进一步巩固和灵活运用先修课程《计算机文化基础》有关文字处理、图表分析、数据归整、应用软件之间图表、数据共享等信息技术处理的综合能力。
2. 基本要求:
要求用C++语言编程,在Visual C++环境下调试完成;
三、设计方法和基本原理
1. 课题功能描述
任意给定5个数字,其中必定存在3个数字已经有序(或者升序,或者降序),找出这5个数字中最长的升序或降序序列。
例如:1,7,5,3,9。则{1,7,9},{1,5,9},{1,3,9}都是最长的升序序列;
而{7,5,3}是最长的降序序列。
再如:1,3,2,5,7。最长的升序序列为{1,3,5,7}和{1,2,5,7}。
2. 问题的解决方案:
自动生成各种可能的序列,对于5个数字所有可能的序列为:
{0,1,2,3}、{0,1,2,4}、{0,1,3,4}、{0,2,3,4}、{1,2,3,4}
{0,1,2}、{0,1,3}、{0,2,3}、{1,2,3}
{0,1,4}、{0,2,4}、{1,2,4}
{1,3,4}
{2,3,4}、{0,3,4}
考察各种可能的序列是否升序或是降序,若是则打印;
四、创新要求
在基本要求达到后,进行创新设计,10个数据,必定会有至少4个数据已经有序(或升序或降序),找出最长的升序或降序序列。
五、课程设计的考核方式及评分方法
1.考核方式
(1) 学生要提交书面课程设计报告(A4纸打印);并将设计报告的电子文档、.cpp源文件和.h头文件放到一个文件夹里(如果是基于MFC的编程,另外还包括源程序的压缩包)上传到所对应班级的学生名称相应文件夹中。
(2) 课程设计结束时,在机房当场验收。教师提供测试数据,由学生运行所设计的系统,检查运行结果是否正确,并回答教师提出的有关问题。
2.评分方法
根据出勤率、课程设计期间纪律、课程设计运行结果、课程设计报告及答辩情况综合评分。
六、书写设计报告的要求(详细内容见“设计报告模板”)
七、说明:课程设计的有关文档,“设计报告模板”和“课程设计要求”请在下载任务书处下载。
--------------------next---------------------
阅读(1240) | 评论(0) | 转发(0) |