人人终身学习知识网~是各类综合知识资源信息分享,提升综合素质与提高知识技能的终身学习网络平台

 找回密码
 立即注册

QQ登录

只需一步,快速开始

微信登录

微信扫码,快速开始

[趣味数学] 奇怪编码

[复制链接]

从空中放下两列火车,每列火车都带着降落伞,降落到一条没有尽头的笔直的铁道上。两列火车之间的距离不清楚。两列车都面向同一个方向。在落地后,降落伞掉在地上,与火车分离。两列火车都有一个微芯片,可以控制它们的运动。两个芯片是相同的。两列火车都不知道自己的位置。你需要在芯片中写入编码,让这两列火车相遇。每行编码都有一定的执行命令的时间。

答案:

你能使用以下指令(而且只能用这些指令):

MF—让火车朝前开

MB—让火车朝后开

IF(P)—如果火车旁边有降落伞,这个条件就得到了满足。

GOTO

答案:

A:MF

IF(P)

GOTO B

GOTO A

B:MF

GOTO B

解释:第一行只是让它们离开各自的降落伞。必须让它们离开自己的降落伞,这样后面的火车才能发现前面火车的降落伞,这样就满足了一个条件,它们就可以跳出起初遵守的编码。它们起初都在A这部分循环,直到后面的火车发现前面火车的降落伞,这时就转入B:并陷入B的循环。前面的火车还是没有找到降落伞,所以就不停地在A里面循环。由于每行编码都有一定的执行命令时间,完成A循环就比完成B费时,因此后面的火车(在B循环中)最终将赶上前面的火车。

回复

使用道具 举报

小黑屋/人人终身学习知识网~是各类综合知识资源信息分享,提升综合素质与提高知识技能的终身学习网络平台

Powered by 5wangxiao

© 2007-2021 5wangxiao.Com Inc.

快速回复 返回顶部 返回列表