春碗刘千魔术解析易语言版本

文章资源8340
' ’‘揭秘:'重要的步骤前我加了*表示'第一个*号,就是从顶部拿3张牌插入中间,结果会怎样,不管原来几张牌如何排列,经过本步骤后一定会出现首张与尾张相同的情况,如果没做到,可以和小尼一桌。'这里延伸一下,如果魔术开始是5张牌,这里就要拿4张牌,依次类推。。。'第二个*号,很神奇,必须的步骤,使底牌排在了准确的位置,具体来说就是:'如果手余5张牌,循环一轮后底牌在第3位置,如果手余6张牌,循环一轮后底牌在第5位置,本操

春碗刘千魔术解析易语言版本 春碗刘千魔术解析易语言版本 文章资源

' ’‘揭秘:
'重要的步骤前我加了*表示
'第一个*号,就是从顶部拿3张牌插入中间,结果会怎样,不管原来几张牌如何排列,经过本步骤后一定会出现首张与尾张相同的情况,如果没做到,可以和小尼一桌。
'这里延伸一下,如果魔术开始是5张牌,这里就要拿4张牌,依次类推。。。


'第二个*号,很神奇,必须的步骤,使底牌排在了准确的位置,具体来说就是:
'如果手余5张牌,循环一轮后底牌在第3位置,如果手余6张牌,循环一轮后底牌在第5位置,本操作很重要,使其正好符合约瑟夫序列

'第三个*号,约瑟夫问题的实施。过程不能错

'至于为何是下翻7张,其实也不是巧合,有兴趣去了解下约瑟夫问题,下面我们来分析约瑟夫问题的解法,递归法。

'本程序只从程序算法角度解决问题,还有更好的数学解法,从略。

最后加上 约瑟夫问题的解法,完美了


.版本2

.子程序子程序报数问题
.局部变量n,整数型
.局部变量m,整数型
.局部变量people,,,"0"
.局部变量i,整数型
.局部变量j,整数型
.局部变量count,整数型

'设有n个人(编号从1到n)围成一圈,从第一个人开始报数,数到m的人出列,然后从出列的下一个人开始重新报数,直到所有人依次出列。问,最后一个出列的人的编号是多少?
n=到整数(编辑框3.内容)  '总人数)
m=到整数(编辑框4.内容)  '报数到m的人出列
重定义数组(people,假,n)
.计次循环首(n,i)
  people =1  ''初始化每个人的状态为在圈内
.计次循环尾()
count=0  '计数器,记录报数到m的人
i=1  '从第1个人开始报数
j=0  '记录出圈的人数
.判断循环首(j<n-1)  '当出圈人数小于总人数时循环
  .如果(people =1)
      count=count+1  '报数加1
      .如果(count=m)  '如果报数到m了
        count=0  '重新开始报数
        people =0  '将这个人标记为出圈
        j=j+1  '出圈人数加1
        输出调试文本(数组_hebing_整数(people,“,”))
      .否则

      .如果结束


  .否则

  .如果结束
  i=i+1  '继续报数
  .如果真(i>n)
      i=1  '如果到了最后一个人,则从第一个人继续报数
  .如果真结束
。。。

话说论坛为啥不能直接上传易语言源码格式

源码链接:https://pan.quark.cn/s/56b94ace0a14

打赏
版权声明本文地址:http://jishubk.com/post/1199.html
1.文章若无特殊说明,均属本站原创,若转载文章请于作者联系。
2.本站除部分作品系原创外,其余均来自网络或其它渠道,本站保留其原作者的著作权!如有侵权,请与站长联系!
技术博客

欢迎发表评论:

评论列表

暂时没有评论

暂无评论,快抢沙发吧~

扫码二维码