编辑代码

function yuesefu(arr,n,m)
    --记录出圈的人数
    count = 0
    --定义一个k变量,从1开始报数,当报到m时,该人出圈
    k=0
    i=0
    while count ~= n  do
        i=i+1
        if  i > n 
        then
            i = 1
        end
        --表示在未出圈人里面报数
        if  arr[i] == 1 
        then
            k=k+1
            --报到m时,将i输出
            if  k == m 
            then
                print(i)
                --表示第i个人出圈
                arr[i] = 0
                --将k归零,从i+1的位置继续从一开始报数
                k = 0
                --出圈人数+1
                count=count+1
            end
        end
    end
end

    print("请输入总人数")
    a=io.read()
    print("请输入出圈数")
    b=io.read()
    n=tonumber(a)
    m=tonumber(b)
    arr={}
    for  i = 1,n 
    do
        --设置数组中每个元素都为1,也就是说未出圈的人
        arr[i]=1
    end
    --调用函数
yuesefu(arr, n, m)