本帖最后由 jackz007 于 2023-1-17 11:01 编辑 import random
heads , tails , con_heads , con_tails , max_heads , max_tails , last = 0 , 0 , 0 , 0 , 0 , 0 , 0
answer = int(input("请输入数字:"))
k = 1 if answer <= 100 else 0
x = answer
while x > 0:
face = random . randint(1 , 2)
if k:
print("正") if face == 1 else print("反")
if face == 1:
if face != last:
if con_tails > max_tails : max_tails = con_tails
con_tails = 0
heads , con_heads = heads + 1 , con_heads + 1
else:
if face != last :
if con_heads > max_heads : max_heads = con_heads
con_heads = 0
tails , con_tails = tails + 1 , con_tails + 1
last = face
x -= 1
print("一共抛币", answer , "次")
print("其中", heads, "次正面",tails, "次反面")
print("连续最多次正面为", max_heads, "次")
print("连续最多次反面为", max_tails, "次")
运行实况:D:\[00.Exercise]\[Python]>python x.py
请输入数字:50
正
反
正
正
反
正
正
反
正
反
正
反
反
正
反
反
正
正
反
反
正
正
反
正
反
正
反
反
正
反
正
反
正
正
正
正
反
反
正
反
反
反
反
反
反
反
反
正
反
正
一共抛币 50 次
其中 23 次正面 27 次反面
连续最多次正面为 4 次
连续最多次反面为 8 次
D:\[00.Exercise]\[Python]>python x.py
请输入数字:5000
一共抛币 5000 次
其中 2474 次正面 2526 次反面
连续最多次正面为 11 次
连续最多次反面为 11 次
D:\[00.Exercise]\[Python]>
|