培训学案算法穷举判断名次.pdfVIP

  1. 1、本文档共1页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

判断名次

在某次数学竞赛中,A、B、C、D、E五名学生被取为前五名。请据下列说法判断

出他们的具体名次,即谁是第几名?

条件1:你如果认为A,B,C,D,E就是这些人的第一至第五名的名次排列,便

大错。因为:

没猜对任何一个优胜者的名次。

也没猜对任何一对名次相邻的学生。

条件2:你如果按D,A,E,C,B来排列五人名次的话,其结果是:

说对了其中两个人的名次。

还猜中了两对名次相邻的学生的名次顺序。

分析:本题是一个逻辑判断题,一般的逻辑判断题都采用枚举法进行解决。5个

人的名次分别可以有5!=120种排列可能,因为120比较小,因此我们对每种情

况进行枚举,然后根据条件判断哪些符合问题的要求。

根据已知条件,A1,B2,C3,D4,E5,因此排除了一种可能性,只有4!

=24种情况了。

参考程序:

ProgramExam10;

Var

A,B,C,D,E:Integer;

Cr:Array[1..5]OfChar;

Begin

ForA:=1To5

Do

ForB:=1To5Do

ForC:=1To5Do

ForD:=1To5Do

ForE:=1To5DoBegin

{ABCDE没猜对一个人的名次}

If(A=1)Or(B=2)Or(C=3)Or(D=4)Or(E=5)ThenContinue;

If[A,B,C,D,E][1,2,3,4,5]ThenContinue;{他们名次互不重

复}

{DAECB猜对了两个人的名次}

IfOrd(A=2)+Ord(B=5)+Ord(C=4)+Ord(D=1)+Ord(E=3)2ThenContinue;

{ABCDE没猜对一对相邻名次}

If(B=A+1)Or(C=B+1)Or(D=C+1)Or(E=D+1)ThenContinue;

{DAECB猜对了两对相邻人名次}

IfOrd(A=D+1)+Ord(E=A+1)+Ord(C=E+1)+Ord(B=C+1)2ThenContinue;

Cr[A]:=A;Cr[B]:=B;Cr[C]:=C;

Cr[D]:=D;Cr[E]:=E;

Writeln(Cr[1],,Cr[2],,Cr[3],,Cr[4],,Cr[5]);

End;

End.

文档评论(0)

kay5620 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8001056127000014

1亿VIP精品文档

相关文档