请您留下宝贵的建议吧:)
广西百色高中欢迎您!

| 网站首页 | 学校概况 | 软件下载 | 图片中心 | 雁过留声 | 视频资源 | 校长信箱 | 内 部 网 |
| 同 学 录 | 网络办公 | 教学课件 | 优秀教案 | 试卷下载 | 教学素材 | 教学论文 | 电子图书 |

 
您现在的位置: 广西百色高中校园网 >> 学校概况 >> 学生频道 >> 信息技术 >> 精典程序 >> 文章正文 用户登录 新用户注册
   
   

猴子选大王          【字体:
猴子选大王
作者:仔仔    文章来源:本站原创    点击数:    更新时间:2006-9-26
猴子选大王
 

题目描述】有N只猴子围成一圈,每只各一个从1到N中的编号,打算从中选出一个大王;经过协商,决定出选大王的规则:从第一个开始循环报数,数到M的猴子出圈,最后剩下来的就是大王。要求:从键盘输入N、M,编程计算哪一个编号的猴子成为大王
分析】 用一维数组存储猴子的编号,删除某个猴子后,后面的猴子前移,N减一,报数一个一个的报,不要M个的报,便于处理特殊情况,下面的代码写于二00四年11月10日,很简练。 (推荐使用链表实现)
Pascal代码
PROGRAM MONKEY;
CONST MAX=30;
VAR
 N,M,I,J:INTEGER;
 A:ARRAY[1..MAX] OF INTEGER;
BEGIN
 READLN(N,M);
 FOR I:=1 TO N DO A[I]:=I;
 I:=1;
 WHILE N>1 DO BEGIN
  FOR J:=1 TO M-1 DO
   IF I+1>N THEN I:=1 ELSE INC(I);
   FOR J:=I TO N-1 DO A[J]:=A[J+1];
   DEC(N);
   IF I>N THEN I:=1;
 END;
 WRITE(A[1]);
 READLN
END.

变形猴子选大王】有M个人围成一圈,每人有一个编号,从编号为1的人开始,每隔N个出圈,按出圈次序排成一列,其编号刚好按顺序从1到M。要求:从键盘输入M、N,编程计算并输出这M个人原来在圈中的位置。
文章录入:qinjun    责任编辑:qinjun 
  • 上一篇文章:

  • 下一篇文章:
  • 发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
          最新热点       最新推荐       相关文章
    没有相关文章
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)

       
     
     
     
    广西百色高中欢迎您!   网站地图 | 联系站长 | 友情链接 | 用户排行 | 版权申明 | 管理登录
    版权所有 Copyright© 2005-2010 广西百色高中 (桂ICP备05013955号)
    学校地址:广西百色市城乡路93号 电话号码:0776-2824142 传真:0776-2847293 邮政编码:533000
    站    长:覃钧  QQ:75331465            改版时间:2007年8月20日