南昌大学计算机2014课程设计题
- 格式:doc
- 大小:43.00 KB
- 文档页数:5
一、时针和分针夹角计算
问题描述:
钟面上的时针和分针之间的夹角总是在0°~180°之间(包括0°和180°,在十二点的时候两针之间的夹角为0°,而在六点的时候夹角为180°,在三点时位90°。本题要解决的是计算12:00到11:59之间任意—个时间的夹角。
输入:输入的数据包含各种各样的情况。每一组测试数据包含两个数字:第一个数字代表小时[大于0小于等于12],第二个数字代表分(在区间[0,59]上)。两个数字都为0表示输入结束。
输出:
对应每组测试数据,用常用格式显示时间以及这个时候时针和分针间的最小夹角,精确到小数点后一位。
二、还原牌的顺序
问题描述:
假设我们有2n张牌,它们以1,2,…,n,n+1,…,2n编号并在开始保持该次序。一次洗牌就是将牌原来的次序变为n+1,1,n+2,2,…,2n,n,也就是将原来的前n张牌放到位置2,4、…,2n,并旦将余下的n张牌按照它们原来的次序放到奇数位置1,3,…,2n-1。已经证明对于任何一个自然数n,这2n张牌经过一定次数的洗牌就可以回到原来的次序,然而我们不知道对于一个特定的n需要几次洗牌才能将牌洗回原来的顺序,所以要你编写程序解决这个问题。
输入:
输入文件由—个自然数序列组成,每个数代表上述提到的n(也就是说商2n张牌)。这个自然数序列由数字0结束。注意每个n都应足够的小从而保证不会使洗牌的时间不会太长。
输出:
对于输入文件中的每一个数,输出将牌洗回原来的次序所需要的洗牌次数。
三、文本译码问题
问题描述:
Burrows wheeler是一种很高效的变换文本的方法。下面我们将用输入的BANANA作为例子,来解释这种变换。
第一步:设t为输入的文本长皮(此例子中,t=6)。接着我们就可得到一个t*t的距阵M。其第一行就足输入的文本:第i行(i=2,…,t)是第i-1行循环左移一个单位的结果。对于BANANA,我们得到下面的矩阵M:
第二步:我们按字典中的排列顺序对矩阵M进行行排列,从而得到一个新的距阵P,
此例中,我们得到以下的距阵P:
第三步;BANANA的Burows Wheeler变换就是给出矩阵P的最后一列字符和BANANA 所对应的行数。找们的例子中矩阵P最后一列字符是NNBAAA,对应BANANA的行数是4;所以BANANA的Burrows wheeler变换是(NNBAAA,4);
现在我们问题的是反向实现Burrows wheeler变换。对于给定矩阵P最后一列字符和文本相对应的行数,你的程序必须给出这个文本。
假设输入的题个例子最多有300个字符,字符间没有空格。
四、英文单词快速排序
问题描述:
用随机算法生成1-16个字符组成的英文单词,约10万个,用快速排序,冒泡排序,直接插入排序方法进行排序,研究理论上的时间复杂度,用实验的方法得出结论,比较其排序时间上差别。
五、模拟电梯运行程序
问题描述:
有N(<=30)层楼房安装的电梯,从第1层到第N层都有控制器,用上光标键控制电梯上,下光标键控制电梯下,用左光标键控制电梯开门,用右光标键控制电梯关门。用1、2、3、4、…、N分别表示到达的楼层,电梯到达某层时蜂鸣报警,用数字显示电梯正在运行的方向和楼层。
六、车牌号的自动编码
问题描述:
车牌号前缀用简称加地区分类号组成,如赣M-后面跟五位,由数字+大写字母构成,有365种可能性。编写程序实现任意汽车牌号的选取,每次选5个,每次选3分钟,可输入牌号选取,可指定前缀选取,如赣M-VV***,可限制选取,如赣F-88***, 赣F-88888等.
七、密码生成并验证密码的强度
问题描述:
随机生成6--16位长度的密码,密码中可以含有0-9,a-z,大写A-Z, 并含
有! @ # $ % ^ & * ( ) ,。:;“‘【】{ } 等符号,可重复,验证密码强度。要求编写程序解决上述问题。
八、哈夫曼编/译码器
问题描述:
利用哈夫曼编码进行信息通信可大大提高信道利用率,缩短信息传输时间,降低传输成本。要求在发送端通过一个编码系统对待传数据预先编码;在接收端将传来的数据进行译码(复原)。对于双工信道(既可以双向传输信息的信道),每端都需要一个完整的编/译码系统。试为这样的信息收发站写一个哈夫曼的编/译码系统。
基本要求:
系统应具有以下功能:
(1)C:编码(Coding)。对文件tobetrans中的正文进行编码,然后将结果存入文件codefile 中,将以此建好的哈夫曼树存入文件HuffmanTree中
(2)D:解码(Decoding)。利用已建好的哈夫曼树将文件codefile中的代码进行译码,结果存入textfile中。
(3)P:打印代码文件(Print)。将文件codefile以紧凑格式显示在终端上,每行50个代码。同时将此字符形式的编码文件写入文件codeprint中。
(4)T:打印哈夫曼树(Tree Printing)。将已在内存中的哈夫曼树以直观的方式(树或凹入表形式)显示在终端上,同时将此字符形式的哈夫曼树写入文件treeprint中。
九、单机文件系统搜索程序
问题描述:
用户在使用计算机的过程中,经常会出现找不到自己所需要的文件的现象,而Internet 上广泛应用的搜索引擎采用基于全文关键字的检索方式,其命中率远高于操作系统提供的对文件名中关键字进行检索的方法。本课程设计的目的在于设计并实现一个针对本地文件系统,基于关键字的文件搜索。
基本要求
(1)输入:用户想要检索的文件名中出现的关键字。
(2)输出:包含用户输入的关键字的文件名称以及所在位置。
(3)需要准备如干格式统一的文本文件,内容随意,作为搜索的目标文件库。要求文件数量大于1000个。目标文件库中可随机划分若干子目录,将目标文件分布其中。
(4)筛除停用词,建立汉语词库。
(5)采用深度优先或者广度优先的方式对整个目标文件库所在目录进行遍历,建立所有目标文件的关键词索引表。
(6)为每一个词语建立文档级索引表。
十、摇奖号码
问题描述:
设兑奖方式为:从1到30选出5个不重复的数字{a0,a1,a2,a3,a4},而主办方开出5个号码P0、P1、P2、P3、P4,外加一个特别号P5,得奖方式如下: