网页资讯视频图片知道文库贴吧地图采购
进入贴吧全吧搜索

 
 
 
日一二三四五六
       
       
       
       
       
       

签到排名:今日本吧第个签到,

本吧因你更精彩,明天继续来努力!

本吧签到人数:0

一键签到
成为超级会员,使用一键签到
一键签到
本月漏签0次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行补签。
连续签到:天  累计签到:天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
10月19日漏签0天
lua吧 关注:11,627贴子:21,996
  • 看贴

  • 图片

  • 吧主推荐

  • 游戏

  • 19回复贴,共1页
<<返回lua吧
>0< 加载中...

【编程解决智力题之一】蜗牛爬绳问题

  • 只看楼主
  • 收藏

  • 回复
  • 沙城雨人
  • 赫赫有名
    13
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
前言:本吧太冷清了,我准备将的一些智力题用lua编程的方法进行解答,希望初学者能从中学会一些用程序解决实际问题的方法,以及lua的编程技巧。很多程序很简单,基本没多少技巧,关键还是建立数学模型的算法思想。
--[[
【题目】:有一根一米长可以无限均匀伸缩的橡皮筋,一只蜗牛从一端开始爬,每秒爬1厘米。橡皮筋每过1秒立即伸长10厘米。请问这只蜗牛能否爬到另一端?
注意理解:均匀伸缩的含义。
很多朋友一看这个题目,第一感觉是蜗牛永远都爬不到终点。
且慢,避免各种先入为主,让我们先编一个简单的程序算一算吧。为了避免无限循环(假如蜗牛永远爬不到终点),我们将时间上限设定为1个月左右吧,如果蜗牛一个月都爬不到,大概也累死了。一个月算30天,大概是2592000秒,我们就取2600000秒作为计算终点。
--]]
--设置绳长、距离的初始值(单位厘米)
local length,dist = 100,100
--设置蜗牛爬过距离以及消耗时间的初始值
local passed,seconds= 0,0
--开始计算
while seconds < 2600000 do
-- 时间+1秒
seconds = seconds + 1
-- 蜗牛爬行距离
passed = passed + 1
-- 距离终点的距离
dist = length - passed
-- 如果距离小于等于0,说明爬到了终点,跳出循环
if dist <= 0 then break end
-- 绳子均匀按比例伸长,已爬过的部分也会伸长
passed = (length + 10) / length * passed
length = length + 10
end
print ("时间="..seconds,"秒\n距离="..dist.."厘米")
-------------------------------------------------------------
结果:
时间=209339秒
距离=-0.63167011761107厘米
可见蜗牛是能爬到终点的,用的时间也就2天多时间就爬到了。
这个问题数学上可以用欧拉公式算出来,不过这里不是数学吧,相关的数学计算方法我就不贴了。回头来看程序,真的是非常简单,你感受到编程在解决实际问题中的强大威力了吗?


  • 沙城雨人
  • 赫赫有名
    13
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
均匀伸长,指的是任何一个地方、任何一点都伸长。假如你把绳子分成10段,那么每1段都伸长1厘米;假如把绳子分成100段,那么每一段都伸长0.1厘米……这是个极限的概念。
做题的时候,可以按比例去计算。每一秒末,绳子伸长的比例为: (length + 10) / length,那么,绳子的任何部分都是以这个比例伸长的,如此可知道,蜗牛已经爬过的部分必然伸长为:
passed * (length + 10 ) / length。
程序没什么难度,关键是能总结出算法。
我并不是觉得这个题目没有挑战性。我写这个东东的目的,是给想学编程的朋友提供一些实际的例程。
我写的那个2048,有人开口就要源码,有人说要拜师。我给你源码你就能看懂么?我直接教你手机编程你就能明白?还是得循序渐进。这个题目这么简单,算法也很简单,你如果能看懂了,我们再继续。


2025-10-19 14:55:40
广告
不感兴趣
开通SVIP免广告
  • lushuquan111
  • 小有美名
    5
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
支持


  • xlizzard
  • 颇具名气
    6
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
支持顶!!!!!!!


  • VCode
  • 富有美誉
    9
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
求更新!


  • 鎏金沙漠
  • 大名鼎鼎
    14
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
非常好支持


  • pengmutian
  • 崭露头角
    2
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
先入为主了!不过看完就懂了!确实是每个部分均匀增长才可以爬到


  • 乐观的XieJing
  • 富有名气
    8
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
好,有趣


2025-10-19 14:49:40
广告
不感兴趣
开通SVIP免广告
  • 星空物语php
  • 颇具盛名
    7
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
楼主的算数思想很不错,顶一下


  • poppy277
  • 默默无闻
    1
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
怎么看都不是智力题,怎么看都是文字题~咬文嚼字~


  • 随风的囝
  • 崭露头角
    2
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
这种题目对我来说就是中文题的感觉。


  • 中国游戏原创
  • 崭露头角
    2
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
有启发


登录百度账号

扫二维码下载贴吧客户端

下载贴吧APP
看高清直播、视频!
  • 贴吧页面意见反馈
  • 违规贴吧举报反馈通道
  • 贴吧违规信息处理公示
  • 19回复贴,共1页
<<返回lua吧
分享到:
©2025 Baidu贴吧协议|隐私政策|吧主制度|意见反馈|网络谣言警示