历年题目wc2001试题_第1页
历年题目wc2001试题_第2页
历年题目wc2001试题_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、猜单词word.pas(exe)【问题描述】人与计算机做猜英文单词的,这种每猜一次叫一局,让你参与多少局由计算机决定。局数为 N。在第一局开始之前,由计算机给出一个文件,文件名为 dict.txt,该文件中给出的是在下面 N 局中让你猜的全部可能的英文单词列表(所有的单词都只由 26 个小写英文字母组成)。计算机选择其中的一个单词让你猜,而你则需要用尽可能少的次数将这个单词猜出来。这个单词在你猜的过程中不会改变。对于你猜的每一个单词,假如猜测正确,则本局结束;否则,计算机会给出下列两个反馈信息:1. 被猜的单词中有 x 个字符包含在你猜的单词中,给出数字 x。假如同一个字母在被猜的单词或你猜的

2、单词中出现了不只一次,则按照出现次数较少者计算。举例来说,设被猜的单词为 dracula,其中有两个字母 a,如果你猜的单词为bag,其中有一个字母a,则返回x=1;如果你猜的单词为abracadabra,则返回x=5。2. 在上述被猜中的字母中有y (y=x) 个是处在正确位置上的,给出数字y。根据上述提示信息,你可以继续你的猜测,直到得出正确的为止。此时计算机会记住这一局你猜了多少次才成功,在你 N 局都猜完后,计算机会给出你累计N 局所用的总次数和平均每局猜测的次数。当然,平均次数越少越好。【编程要求】现在需要你编写一个程序来做这个。你的程序要和一个库(GuessLib.tpu)进行通讯

3、,交互的进行这个。GuessLib.tpu 提供了以下几个过程和函数供调用:1) Procedure Initialize;初始化过程,同时生成词典文件 dict.txt。此过程必须在程序开始处首先被调用,而且只能被调用一次。2) Function GetRoundNum:eger;返回要进行的局数N,每次调用的返回值都一样。3) Procedure StartRound;开始一局,确定被猜测的单词。此过程必须在每一局开始前调用。Procedure Guess(s: string);给出你的程序所猜测的单词s。Function CorrectNumber: byte;返回猜测正确的字符个数,在

4、两次调用 Guess 之间返回值不会改变。6) Function Correctition: byte;返回猜测正确的位置个数,在两次调用 Guess 之间返回值不会改变。7) Function Correct:判断猜测结果是否就是正确;,返回 true 就表示最近一次猜测是正确的,在调用 StartRound 之后,返回值会自动变成false。8) Procedure Finish;当全部 N 局结束之后,必须调用此过程,结束程序,此过程也生成运行结果,作为评判你的程序的依据。【输入输出】你的程序除了和 GuessLib.tpu 交互之外,只能何其他的文件读写操作。文件 dict.txt,而

5、不能进行任Dict.txt 的格式为:第一行是一个正整数 w,表示文件 dict.txt 中所含的单词的数目;以下 w 行每行包含一个单词,单词的顺序没有规定,任何两行的单词都不相同。【样例】设调用Initialize 后,生成单词表dict.txt 如下:再调用 GetRoundNum 得到总的局数N,假设 N=2。6host hour our book double copy第一局,调用 StartRound,计算机选中的单词是 double。当然,你的程序此时无从获知这个单词。假如你的程序猜了host,即调用 Guess(host),则有下述的反馈:1.2.3.调用Correct,返回f

6、alse。调用CorrectNumber,返回 1;调用Correctition,返回 1;然后,你的程序可以根据这些反馈信息,进行进一步的猜测,直到得出正确结果为止。完成第一局后,再次调用 StartRound,则进入第二局,仍是如前所述的猜测过程,直至得出第二局的正确结果。此后,调用 Finish 给出评测结果,然后结束程序。【数据说明】局数 N=20。Dict.txt 中所含的单词数不超过 3000,单词的长度最小为 1 个字母,最大为 9 个字母。【评分说明】程序的运行过程和结果由 GuessLib.tpu 自动本局的猜测次数;如果未能正确猜出。如果一局最终猜测正确,作为惩罚,本局猜测次数以

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论