Python 練習(xí)實(shí)例69

Python 100例 Python 100例

題目:有n個(gè)人圍成一圈,順序排號(hào)。從第一個(gè)人開(kāi)始報(bào)數(shù)(從1到3報(bào)數(shù)),凡報(bào)到3的人退出圈子,問(wèn)最后留下的是原來(lái)第幾號(hào)的那位。

程序分析:無(wú)。

程序源代碼:

#!/usr/bin/python
# -*- coding: UTF-8 -*-

if __name__ == '__main__':
    nmax = 50
    n = int(raw_input('請(qǐng)輸入總?cè)藬?shù):'))
    num = []
    for i in range(n):
        num.append(i + 1)

    i = 0
    k = 0
    m = 0

    while m < n - 1:
        if num[i] != 0 : k += 1
        if k == 3:
            num[i] = 0
            k = 0
            m += 1
        i += 1
        if i == n : i = 0

    i = 0
    while num[i] == 0: i += 1
    print num[i]

執(zhí)行以上代碼,輸出結(jié)果:

$ python test.py 
請(qǐng)輸入總?cè)藬?shù):34
10

Python 100例 Python 100例