您當前的位置:首頁 > 書法

搶21遊戲

作者:由 splinzer 發表于 書法時間:2018-04-19

小時候和夥伴們玩過一個數字遊戲:兩個人玩,從小到大輪流數數,一個人每次只能數1-3個數,誰先數到21算輸。當時琢磨出了這個遊戲的制勝訣竅,然後憑藉這個遊戲贏了夥伴不少零食。今天用Python寫出來,讓不明真相的同學試試,哈哈。

def

game

step

=

3

count

=

5

):

‘’‘兩人輪流從1開始從小到大數數,每次只能數1-3個數,誰數到21誰就輸

泛化一下:

n 為每次最大步數

max = (n + 1) * m + 1

制勝訣竅是搶n + 1的倍數

’‘’

current_number

=

0

target

=

step

+

1

*

count

+

1

print

‘————-遊戲規則————-’

print

‘’‘人和電腦輪流從1開始從小到大數數,每次只能數1-

%d

個數,

誰數先到

%d

誰就輸’‘’

%

step

target

))

while

True

n

=

input

‘走幾步?’

if

n

isdigit

():

n

=

int

n

if

not

0

<

n

<

step

+

1

):

print

‘————-只能輸入1和

%d

之間的數————-’

%

step

continue

else

print

‘————-只能輸入數字————-’

continue

#玩家走

print

‘————-您選擇走

%d

步————-’

%

n

for

i

in

range

1

n

+

1

):

current_number

+=

1

print

‘您>’

current_number

if

current_number

>=

target

print

‘————-Game Over! 您輸了!————-’

return

#電腦走

m

=

step

+

1

-

n

print

‘————-電腦選擇走

%d

步————-’

%

m

for

i

in

range

1

m

+

1

):

current_number

+=

1

print

‘電腦>’

current_number

game

()

標簽: STEP  number  current  print  1print