39题任务书-回文数猜想

发布时间 : 星期五 文章39题任务书-回文数猜想更新完毕开始阅读

编号:39

河北联合大学 《软件设计基础-C++》

课程设计任务书

学院 班级 设计人 __ 成绩 ____

一、题目:回文数猜想 二、目的与要求

1. 目的:

(1)使学生更加系统地理解和掌握C++语言的基本概念、语言特点和编程技巧。

(2)使学生应用C++语言在程序设计方面得到系统锻炼,为将来VC进行软件开发打下良好基础。

(3)提高学生建立程序文档、归纳总结的能力。 2. 基本要求:

(1)要求用模块化设计和C++的思想来完成程序的设计; (2)培养上机动手能力,巩固分支结构和循环结构。

(3)在VC++6.0环境中,学会调试程序的方法,及时查究错误,独立调试完成。 (4)程序调试通过后,完成程序文档的整理,加必要的注释。 3. 创新要求

在基本达到题目要求外,进行创新设计,如:当累加的数字超过32位时,计算机便不能精确显示了。如何实现大的整型数据的精确存储。提示:用两个数组实现,同时开辟两个字符数组,将每个数的每一位数字分别存放在两个不同的数组a[m],b[m]中,a数组中的数与b数组中的数的顺序刚好相反,运算时对位相加即可。当然还要考虑进位问题,相加之后的结果仍然放回到a数组中。

4.书写设计报告的要求 设计报告中包含以下几个方面: (1)设计题目 (2)总体设计

① 概述所作系统的功能及用途

② 用自顶而下或自底而上的方法,划分功能模块。 ③ 确定各模块的算法 (3)根据算法画出模块图

(4)列出程序清单,并加以必要的注释 (5)写出调试程序的方法

(6)指出所设计问题的不足和改进方案 (7)总结本次设计的收获及心得

三、设计内容及其基本原理和设计方法

1

编号:39

1.问题描述:

汉语的对联中有回文联,例如:客上天然居,居然天上客。数学里也有这种情况,左右对称的自然数称为回文数,;例如:121、4224、13731等。从任意一个两位或两位以上的自然数开始,将这个数与它的逆序数相加,不断重复上述操作,经过若干步的逆序相加之后,可能得到一个回文数。设计一个程序,由计算机在局部范围内验证“回文数猜想”,并将寻找回文数的每一个步骤都显示在屏幕上。

2.解决方案:

一个数的反序数如何实现。因为不超过1000的整数可以表示成:100*i+10*j+k,其中i、j、k均为整数,因此该整数的反序数可以写成:100*k+10*j+i,但是,有两种特殊情况需要考虑,即一位数和两位数的反序数应该仍保持为数不变。

四、主要技术问题的描述

依据上面的描述,可以设计一个求逆序数函数和一个判断回文数的函数。

逆序数函数:将该函数的数据类型定义为长整型,用于得到用户输入的整数的反序数。在主函数中调用该函数时,将用户输入的整数作为实参传递给函数的形参n。

判断回文数函数定义为布尔型,判断逆序函数返回值是否为回文数。

五、课程设计时间: 年 月 日至 年 月 日 六、课程设计的考核方式及评分方法

1.考核方式

课程设计结束时,在机房当场验收。

(1)教师提供测试数据,检查运行结果是否正确。 (2)回答教师提出的问题。

(3)学生提交课程设计报告(A4纸打印),并将电子文档和源程序发至ftp服务器:

ftp://210.31.197.23

用户名和密码按照指导教师告知的即可。

2.评分方法 (1)出勤率

(2)课程设计准备工作 (3)课程设计期间纪律 (4)课程设计运行结果 (5)课程设计报告 (6)答辩情况

指导教师签字:

系主任签字:

日 期: 年 月 日

2

联系合同范文客服:xxxxx#qq.com(#替换为@)