前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >按键精灵进阶之路——考级题目001

按键精灵进阶之路——考级题目001

作者头像
Ed_Frey
发布2023-08-28 15:03:31
1720
发布2023-08-28 15:03:31
举报
文章被收录于专栏:奔跑的键盘侠奔跑的键盘侠

这是奔跑的键盘侠的第199篇文章

作者|我是奔跑的键盘侠

来源|奔跑的键盘侠(ID:runningkeyboardhero)

转载请联系授权

三年前,按键精灵板块停更了,读个研还是非常不易的,过程艰辛、结果辛酸。从今天开始,按键精灵相关内容,将开始新一轮的耕耘

与以往不同的是,我们邀请到了chatgpt专家来写代码,毫无疑问,顺应潮流才能与时俱进

废话不多说,直接上题目和代码。

100个人手拉手围成一圈,逢三退一(1到3循环数数,被数到3的人退出),求最后一个被剩下人的编号.请写出代码)

代码语言:javascript
复制
// 定义常量
const peopleNum = 100   // 人数
const countNum = 3      // 数到的数字
const exitNum = 1       // 退出的数字

// 初始化参与游戏的人员数组
dim people[peopleNum]
for i = 0 to peopleNum-1 step 1
    people[i] = i+1
next

// 开始游戏
dim currIndex = -1     // 当前人员的索引(初始值为-1,方便计算)
dim exitCount = 0      // 已退出游戏的人数
while exitCount < peopleNum - 1 do
    dim count = 0       // 统计数到的数字
    while true do
        currIndex = (currIndex + 1) mod peopleNum   // 循环计算当前人员的索引
        if people[currIndex] > 0 then
            count = count + 1
        end if
        if count = countNum then
            exitCount = exitCount + 1
            people[currIndex] = -exitCount    // 将退出游戏的人标记为负数,方便后续判断
            print "第" & exitCount & "个退出游戏的人的编号为:" & people[currIndex]
            Exit while
        end if
    end while
wend

// 输出最后一个剩下的人
for i = 0 to peopleNum-1 step 1
    if people[i] > 0 then
        print "最后一个剩下的人的编号为:" & people[i]
        Exit for
    end if
next

补充说明:

  1. 首先定义了题目中所给定的常量,分别代表人数、数到的数字和退出的数字。
  2. 初始化参与游戏的人员数组,以便于后续对游戏进行操作。使用 for 循环遍历人员数组,将数组中每个元素赋值为其索引加 1。
  3. 开始游戏,使用 while 循环来模拟游戏的过程。
    • 定义 currIndex 变量表示当前正在数数的人的索引,初始值为 -1。
    • 定义 exitCount 变量表示已经退出游戏的人数,初始值为 0。
    • 使用 while 循环来循环数数。当当前数到的数字等于 countNum 时,将当前正在数数的人标记为退出游戏,并将其编号输出。退出循环后,将 exitCount 加 1。
    • 当 exitCount 的值达到 peopleNum - 1 时,说明只剩下最后一个人没有退出游戏了,跳出 while 循环。
  4. 输出最后一个剩下的人的编号,遍历人员数组,找到剩下的最后一个人即可。

-END-

© Copyright

奔跑的键盘侠原创作品 | 尽情分享朋友圈 | 转载请联系授权

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2023-05-27,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 奔跑的键盘侠 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档